0
我想在存儲數據的文件中有很多種方法,我發現其中一個是使用buffedinputstream,但我真的不知道它是否好? 如果我使用這樣,它會最快? 有沒有其他建議?我只是想讓文件io更快!這是存儲和讀取一些文本數據的最有效方法嗎?
public ArrayList<String> testReadingTxtFromFile(){
ArrayList<String> result = null;
try {
FileInputStream fIn = openFileInput("cacheingtext.txt");
InputStreamReader isr = new InputStreamReader(fIn);
BufferedReader reader = new BufferedReader(isr);
String line;
while((line = reader.readLine())!= null){
String[] datas = line.split(",");
Log.i("check", datas.length+"");
for(String data:datas){
Log.i("check", data);
result.add(data);
}
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result;
}
public void testWritingTxtToFile(String[] messages){
try {
FileOutputStream fo = openFileOutput("cacheingtext.txt", MODE_WORLD_READABLE);
OutputStreamWriter osw = new OutputStreamWriter(fo);
BufferedWriter writer = new BufferedWriter(osw);
int size = messages.length;
for(int i=0;i<size;i++){
writer.write(messages[i]);
writer.write(",");
Log.i("check", "write "+messages[i]);
}
writer.flush();
writer.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
哦,我明白了。 那麼,如果關注文本是filereader更好? – rex
是的...字符流(文件讀取器/寫入器)的主要優點是可以很容易地編寫不依賴於特定字符編碼的程序,因此易於國際化。 –
哦,我看到 非常感謝,學到很多東西 – rex