android - 尝试保存文件时没有这样的文件或目录

标签 android file directory save

对于我正在开发的应用程序,我想将一些文本写入 SD 卡上的文本文件。我试图用下面的代码来做到这一点。这给出了一个错误,但我不明白为什么。据我所知,我已经完美地遵循了网络上的所有示例。在 logcat 中,我看到了第一个日志,但没有看到第二个日志,所以问题出在文件的创建上。你们知道出了什么问题吗?

public void saveDataToFile(String data, String fileName) {

    Log.d("Checks", "Trying to save data");

    try {
        // Set up the file directory
        String filePath = Environment.getExternalStorageDirectory().toString() + "/Data Folder";
        File fileDirectory = new File(filePath);
        fileDirectory.mkdirs();
        Log.d("Checks", "Directory created");

        // Set up the file itself
        File textFile = new File(fileDirectory, fileName);
        textFile.createNewFile();
        Log.d("Checks", "File created");

        // Write to the file
        FileOutputStream fileOutputStream = new FileOutputStream(textFile);
        OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fileOutputStream);
        outputStreamWriter.append(data);
        outputStreamWriter.close();
        fileOutputStream.close();

        Toast.makeText(mContext, "Done writing to SD card", Toast.LENGTH_SHORT).show();
    } catch (Exception e) {
        Toast.makeText(mContext, e.getMessage(), Toast.LENGTH_LONG).show();
    }

}

编辑:

原来我忘记了向 list 添加正确的权限。现在可以使用了!

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

最佳答案

您是否声明了访问和写入外部 SD 卡的正确使用权限?

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

关于android - 尝试保存文件时没有这样的文件或目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17494666/

相关文章:

滚动时 Android ListView 背景颜色更改 - colorCacheHint 未修复问题

iphone - OpenGL ES 中的金属闪光效果?

php - 为什么我尝试写入的文件是 "non-existing"?

c - 只获取c/Ubuntu中某个目录下的文件

android - 从 Android Studio 2.1 切换到 2.2 时出错

php - 无需第三方服务即可同步移动应用程序和网络应用程序

c++ - 将float数组写入&追加到C++中的hdf5文件中的唯一数据集

java - 将文本文件写入内部存储的最佳方法?

java - 通过扫描仪使用目录中的多个文件 (Java)

svn - 创建一个包含新目录的 SVN 补丁