本文分析Java IO各种类的原理及用法
1、FileWritter、FileReader、BufferedWritter、BufferedReader示例演示
Log.i(TAG, ""+(1 << 13));
File file = new File(Environment.getExternalStorageDirectory(), "wallet.txt");
String str = "The steak is too well down!\rYes,please!\r\nNo,thanks!\nYou're right!";
try {
//write charactors to file
FileWriter fileWriter = new FileWriter(file, true);//appended rather than overwritten
//wrap an existing writer and buffer output
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter, 8192);//default size 1 << 13
bufferedWriter.append(str, 0, str.length());//Appendable, work the same way as Writer.write
String[] strings = {"January","February","March","April","May"};
for(int i=0;i<strings.length;i++){
bufferedWriter.write(strings[i]);
}
bufferedWriter.flush();//Flushable
bufferedWriter.close();//Closeable
//read characters from file
FileReader fileReader = new FileReader(file);
//wrap an existing reader and buffer input
BufferedReader bufferedReader = new BufferedReader(fileReader, 8192);
String receiveLine;
StringBuilder stringBuilder = new StringBuilder();
//newLine:\r,\r\n,\n
while((receiveLine = bufferedReader.readLine())!=null){
stringBuilder.append(receiveLine).append('\n');
}
bufferedReader.close();//don't have flush
Toast.makeText(this, stringBuilder.deleteCharAt(stringBuilder.length()-1), Toast.LENGTH_SHORT).show();
} catch (IOException e) {
e.printStackTrace();
}
读写磁盘权限:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>