我想从我的项目探戈开发者平板电脑上读取和写入外部micro-SD卡上的文本文件。
这是我的阅读代码(可行):
/* Checks if external storage is available for read and write */
String state = Environment.getExternalStorageState();
if (Environment.MEDIA_MOUNTED.equals(state)) {
String secondaryStore = System.getenv("SECONDARY_STORAGE") + "/Testordner";
Log.d("secondaryStore", "" + secondaryStore);
File file = new File(secondaryStore, "file.txt");
StringBuilder text = new StringBuilder();
try {
BufferedReader br = new BufferedReader(new FileReader(file));
String line;
while ((line = br.readLine()) != null) {
text.append(line);
text.append('\n');
}
br.close();
} catch (Exception e) {
Log.d("Exception", "");
}
Log.d("Text", "" + text.toString());
}
这是我的写作代码(它还没有工作):
try {
File file2 = new File(secondaryStore,"file2.txt");
FileWriter writer = new FileWriter(file2);
writer.append("Hello World!");
writer.flush();
writer.close();
} catch (Exception e) {
Log.d("Exception", "");
}
我做错了什么?或者探戈平板电脑是否仍有错误?我找到了这两个链接,但试图解决这两个应用程序的问题不起作用:
答案 0 :(得分:0)
创建新文件时遇到了同样的问题。该文件实际上已创建,但android文件系统未使用新文件更新(如果重新启动平板电脑,您实际上可以看到它)。 关闭我的文件后添加这一行实际上帮助android文件系统立即注意到我的文件。
MediaScannerConnection.scanFile(mActivity, new String[]{file.toString()}, null, null);
希望它适合你。