版權聲明:本文為xing_star原創文章,轉載請註明出處! 本文同步自http://javaexception.com/archives/183 很久之前寫了一篇Java讀取文本文件內容,鏈接地址是http://javaexception.com/archives/128 本篇是它的續集,這篇的重 ...
版權聲明:本文為xing_star原創文章,轉載請註明出處!
本文同步自http://javaexception.com/archives/183
很久之前寫了一篇Java讀取文本文件內容,鏈接地址是http://javaexception.com/archives/128 本篇是它的續集,這篇的重點是在Android中,Java讀取文本文件內容,讀取的是Android中asset目錄或者是raw這樣的目錄裡面的文本文件內容,那麼針對這種我們該如何處理呢,在前面的代碼中是要做出一定程度的修改的。
java讀取文本文件
下麵看一下完整的代碼public static String readFileContent(InputStream inputStream) { InputStreamReader inputStreamReader = new InputStreamReader(inputStream); BufferedReader reader = null; StringBuffer sbf = new StringBuffer(); try { reader = new BufferedReader(inputStreamReader); String tempStr; while ((tempStr = reader.readLine()) != null) { sbf.append(tempStr); } reader.close(); return sbf.toString(); } catch (IOException e) { e.printStackTrace(); } finally { if (reader != null) { try { reader.close(); } catch (IOException e1) { e1.printStackTrace(); } } } return sbf.toString(); }下麵列一個最近的使用場景,有些時候需要寫個demo,但是呢,數據源來自於公司的app。在公司App上做實驗(App業務複雜,太龐大),代碼編譯太慢,太影響調試進度,就想著寫個demo,把數據源放到文本文件中,從文本文件中獲取數據源,渲染界面。
public WallBean getFaceWall() { String content = null; try { content = FileUtils.readFileContent(getResources().getAssets().open("test.txt")); } catch (IOException e) { e.printStackTrace(); } if (TextUtils.isEmpty(content)) { return null; } return new Gson().fromJson(content, new TypeToken<WallBean>() { }.getType()); }這部分代碼,先獲取assets目錄下test.txt文本文件的文件流,然後呢,使用我們上面寫的讀取InputStream的方法,就可以獲取到文件流的文本內容了。