无法写入Android设备上的文件

时间:2014-11-29 16:18:58

标签: android csv path

我正在尝试使用CSVWriter为我的android项目写入文件。

作为我文件夹结构的一部分,我创建了一个名为myData的文件夹,其中包含一个名为results.csv

的CSV文件
String csvpath = Environment.getExternalStorageDirectory().getAbsolutePath();
CSVWriter csvw = new CSVWriter(new FileWriter(csvpath+"/myData/results.csv"));

但是我得到以下异常

java.io.FileNotFoundException: /storage/emulated/0/myData/results.csv: open failed: ENOENT (No such file or directory)

我还补充说:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

如何获取此文件的正确路径?

1 个答案:

答案 0 :(得分:1)

问题是您必须创建myData文件夹否则会抛出异常。

    File dir=new File( Environment.getExternalStorageDirectory(), "MyDate");
    if(!dir.exists()){
        dir.mkdir();
    }
    CSVWriter csvw = new CSVWriter(new FileWriter(dir.getAbsolutePath()+"/results.csv"));

在清单中:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>