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