Android的res文件夾是用來存儲資源的,可以在res文件夾下建立一個raw文件夾,放置在raw文件夾下的內容會被原樣打包,而不會被編譯成二進制文件,並且可以通過R文件進行很方便地訪問。
比如我們可以將更新信息、版權信息等放到txt文件中,然后放到raw文件中,然后很方便地進行訪問。
在raw中放入一個a.txt文件,然后就可以在Activity中使用getResources().openRawResource(R.raw.a);方法獲取一個此文件的InputStream類,而后就可以很方便地進行讀寫a.txt了。

1 InputStream inputStream = getResources().openRawResource(R.raw.a);
一個獲取InputStream中字符串內容的方法:傳入一個InputStream,返回其中的文本內容。

1 public static String getString(InputStream inputStream) { 2 InputStreamReader inputStreamReader = null; 3 try { 4 inputStreamReader = new InputStreamReader(inputStream, "gbk"); 5 } catch (UnsupportedEncodingException e1) { 6 e1.printStackTrace(); 7 } 8 BufferedReader reader = new BufferedReader(inputStreamReader); 9 StringBuffer sb = new StringBuffer(""); 10 String line; 11 try { 12 while ((line = reader.readLine()) != null) { 13 sb.append(line); 14 sb.append("\n"); 15 } 16 } catch (IOException e) { 17 e.printStackTrace(); 18 } 19 return sb.toString(); 20 }
以gbk編碼讀取內容,不同的文本文件可能編碼不同,如果出現亂碼,可能需要調整編碼。

1 inputStreamReader = new InputStreamReader(inputStream, "gbk");