【问题标题】:Writing a File in Android在 Android 中编写文件
【发布时间】:2012-11-28 09:34:05
【问题描述】:

首先,如果有类似的帖子,我很抱歉,但我无法理解。

我正在尝试在 android 中编写一个文件,我得到了以下代码:

String FILENAME = "hello_file.txt";
String string = "hello world!";

FileOutputStream fos;
try {
    fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
    fos.write(string.getBytes());
    fos.close();
} catch (FileNotFoundException e) {
    e.printStackTrace();
    Log.d("Angles", "FileNotFoundException");
}catch(IOException e){
    e.printStackTrace();
    Log.d("Angles", "IOException");
}

我没有得到任何异常,所以我想它可以工作,但我无法在设备内找到 hello_file.txt 文件。

我在 Galaxy Nexus 上运行;没有标准。

【问题讨论】:

  • 您需要的所有权限都已声明?此外,您可能正在写入应用程序的 /data/ 文件夹。
  • 够了吗?:android.permission.MOUNT_FORMAT_FILESYSTEMS
  • 看起来可能是文件权限问题-引用docsFile creation mode: the default mode, where the created file can only be accessed by the calling application (or all applications sharing the same user ID).
  • 确保此权限在清单中 应该允许您写入:/sdcard/Android/data/[package_name ]/缓存
  • 应用程序的私有目录在默认情况下被其他实体(包括您)限制访问。在 ADBD 以 root 身份运行的模拟器或设备上,您可以使用 DDMS 访问它们,否则,如果 apk 是可调试的,您可以使用 run-as 工具和 adb shell 命令 - 否则,您必须让应用程序本身标记文件世界可读或将其复制到外部存储。

标签: java android string file


【解决方案1】:

如果要在sdcard中创建文件,需要使用

File f =  new File (Environment.getExternalStorageDirectory(),"myfile.txt")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-12
    • 1970-01-01
    • 1970-01-01
    • 2012-12-22
    • 1970-01-01
    • 2021-02-19
    • 1970-01-01
    • 2014-10-09
    相关资源
    最近更新 更多