Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android項目創建xml和存儲xml文件

android項目創建xml和存儲xml文件

編輯:關於Android編程

學安卓復習java基礎

因為項目需要刷新出昨天的文章,因此之前點擊一份電子雜志,創建一個新的xml文件的方式就不對了,因為電子雜志不同於新聞,不會時時更新,因此一條更新一次,所以我需要每天下載一份它的RSS 源的xml文件到項目裡(曾經居然想下載到手機的sd卡裡),文件命名格式以時間加上雜志名,那麼我每天需要創建這些xml,在項目下創建文件可以在files和cache中創建,我選擇在files下創建。
                File file1 = null,file2=null,file3=null,file4=null;
		Date date2 = new Date();
		SimpleDateFormat format2 = new SimpleDateFormat(yyyyMMdd);
		//獲取項目文件files的目錄
		File tempFile = this.getFilesDir();
		String yygypathstr = tempFile.toString();
		//文件命名格式為以時間(年月日)+資源名
		file1 = new File(yygypathstr, (format2.format(date2)+VICE中國+ .xml));
		file2 = new File(yygypathstr, (format2.format(date2)+設計癖+ .xml));
		file3 = new File(yygypathstr, (format2.format(date2)+知乎+ .xml));
		file4 = new File(yygypathstr, (format2.format(date2)+豆瓣一刻+ .xml));
		//如果文件不存在,才創建
		if (!file1.exists() && !file2.exists() && !file3.exists() && !file4.exists()) {
			try {
				file1.createNewFile();
				file2.createNewFile();
				file3.createNewFile();
				file4.createNewFile();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		

這個放在第一個activity中進行判斷。創建好了之後,需要往這裡面些數據,如果文件不為空且可以和RSS源連接上,就寫入數據,我們需要往當天的那份雜志不為空的xml文件寫入數據,用到循環判斷。
                        Date date = new Date();
			SimpleDateFormat format = new SimpleDateFormat(yyyyMMdd);
			String paperTitleName=format.format(date)+title+ .xml;
			File file=null;
			
			File fileXml=new File(xmlPath.toString());
			File[] tempList = fileXml.listFiles();
			//點擊那一份雜志,找到這份雜志的當天xml賦給file
			for (int i = 0; i < tempList.length; i++) {
				if (paperTitleName.equals(tempList[i].getName())) {
					file=tempList[i];
				}
			}
如果不為空就不存入數據
                        HttpClient client = new DefaultHttpClient();
			HttpGet get = new HttpGet(RSS_URL);
			try {
				HttpResponse response = client.execute(get);
				if (response.getStatusLine().getStatusCode() == 200 && file.length()==0) {
					InputStream inputStream = response.getEntity().getContent();

					FileOutputStream fos = new FileOutputStream(file);
					int byteread = 0;
					byte[] buffer = new byte[1024];
					while ((byteread = inputStream.read(buffer)) != -1) {

						fos.write(buffer, 0, byteread);
					}
					fos.flush();
					fos.close();
					inputStream.close();
				}
			} catch (ClientProtocolException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
存入數據之後,開始解析xml文件讀取數據,方法和我之前寫的如何讀取xml的方法一樣。明天我將完成如何向下滑動,刷新出昨天的文章。
 
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved