Android 讀寫檔案的N種寫法(待續。。。)
讀取raw檔案
// 讀取raw檔案private void rawRead(){String ret = "";try {InputStream is = getResources().openRawResource(R.raw.my_raw);int len = is.available();byte []buffer = new byte[len];is.read(buffer);ret = EncodingUtils.getString(buffer, "utf-8");is.close();} catch (Exception e) {e.printStackTrace();}tvTXT.setText(ret);}
讀取assets檔案
// 讀取assets檔案private void assetsRead(){String fileName = "my_assets.txt";// assets下檔案//String fileName = "test/my_assets_test.txt";// assets下子目錄檔案String ret = "";try {InputStream is = getResources().getAssets().open(fileName);int len = is.available();byte []buffer = new byte[len];is.read(buffer);ret = EncodingUtils.getString(buffer, "utf-8");is.close();} catch (Exception e) {e.printStackTrace();}tvTXT.setText(ret);}
讀取sdcard檔案
// 讀取sdcard檔案private void sdcardRead(){String fileName = "/sdcard/my_sdcard.txt";// assets下檔案//String fileName = "/sdcard/test/my_sdcard_test.txt";// sdcard下子目錄檔案String ret = "";try {FileInputStream fis = new FileInputStream(fileName);int len = fis.available();byte []buffer = new byte[len];fis.read(buffer);ret = EncodingUtils.getString(buffer, "UTF-8");fis.close();} catch (Exception e) {e.printStackTrace();}tvTXT.setText(ret);}
運行效果: