android文件操作:
//Test in main()
String fileName = "/data/data/com.example.fileoperation/files/test.txt";
String str = "This is for test string";
readFileData(fileName);
writeFileData(fileName, str);
// read file input stream
File file = new File("/data/data/com.example.fileoperation/test.txt");
FileInputStream fin = new FileInputStream(file);
// code above is equivalent to below:
/* Android Activity独有的方法,读写文件进程序自己目录下的files文件夹,若文件不存在,则自动创建之;
如我的程序在:/data/data/com.example.fileoperation, 则test.txt文件在:
/data/data/com.example.fileoperation/files/test.txt
*/
FileInputStream fin = openFileInput(fileName);
// write file output stream
File file = new File("/data/data/com.example.fileoperation/test.txt");
FileOutputStream fout = new FileOutputStream(file);
// code above is equivalent to below:
FileOutputStream fout = openFileOutput(fileName, MODE_PRIVATE);
SD卡文件读写:
// write SDCard
private void writeFileSdcardFile(String fileName, String writeStr) throws IOException {
try {
FileOutputStream fout = new FileOutputStream(fileName);
byte[] bytes = writeStr.getBytes();
fout.write(bytes);
fout.close();
} catch (Exception e) {
e.printStackTrace();
}
}
// read SDCard
private String readFileSdcardFile(String fileName) throws IOException {
String res = "";
try {
FileInputStream fin = new FileInputStream(fileName);
int length = fin.available();
byte[] buffer = new byte[length];
fin.read(buffer);
res = EncodingUtils.getString(buffer, "UTF-8");
fin.close();
} catch (Exception e) {
e.printStackTrace();
}
return res;
}