写入文件在 Android 中不起作用

Write to file is not working in Android

我一直在尝试写入 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 构造函数。 None 其中有效。我正在使用 Android Studio 2.3.3

您正在尝试在 C:\Users.... 位置写入文件,这是 Windows OS.

的目录结构

但是 Android 是建立在 Linux OS 之上的。要在 android 中获取用户可写目录,您应该使用 Environment.getExternalStorageDirectory(),如下所示:

File file = new File(Environment.getExternalStorageDirectory(), filename);