我一直在尝试写入Android中的文件。它无法正常工作,甚至无法创建文件。它总是执行catch块。这是我的计划的一部分。
private void write(){
try {
FileWriter fileWriter = new FileWriter("C:\\Users\\Administrator\\AndroidStudioProjects\\SunCalculator\\app\\src\\main\\res\\raw\\au_locations.txt");
Log.e("Data","path detected");
BufferedWriter bfWriter = new BufferedWriter(fileWriter);
bfWriter.write("Text Data");
bfWriter.close();
Log.e("Data","worked");
} catch (IOException e) {
e.printStackTrace();
Log.e("Data","not worked");
}
}
我还尝试创建一个File
对象并将其传递给FileWriter
构造函数。这些都没有奏效。我使用的是Android Studio 2.3.3
答案 0 :(得分:0)
您正在尝试在位置C:\\Users....
中编写文件,这是Windows操作系统的目录结构。
但Android是基于Linux操作系统的。要在android中获取用户可写目录,您应该使用Environment.getExternalStorageDirectory()
,如下所示:
File file = new File(Environment.getExternalStorageDirectory(), filename);