java - Android 文件读写

标签 java android android-layout

我是 Android 编程新手,如果这个问题听起来很愚蠢,请原谅我。我想在 Android 程序中读取和写入文件。我知道如何在 Java 中做到这一点。

阅读文档后,我编写了以下代码。但是我无法找到该文件的位置。根据文档,它应该位于文件夹 data/data/package_name 中。

我有三星 Galaxy S2。我启动了该应用程序,然后关闭了它。当我去寻找该文件时,我找不到它。我查看了我的文件/数据。但是这个data文件夹里面并没有data文件夹。我做错了什么?

感谢您的帮助。

来源: 1.http://developer.android.com/training/basics/data-storage/files.html 2.http://www.vogella.com/articles/AndroidFileBasedPersistence/article.html#overview

public class MainActivity extends Activity {

private void writeFileToInternalStorage() {
      String eol = System.getProperty("line.separator");
      BufferedWriter writer = null;
      try {
        writer = new BufferedWriter(new OutputStreamWriter(openFileOutput("myfile.txt", MODE_WORLD_WRITEABLE)));
        writer.write("This is a test1." + eol);
        writer.write("This is a test2." + eol);
      } catch (Exception e) {
          e.printStackTrace();
      } finally {
        if (writer != null) {
        try {
          writer.close();
        } catch (IOException e) {
          e.printStackTrace();
        }
        }
      }
}   
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    writeFileToInternalStorage();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}

}

最佳答案

您可以使用getExternalFilesDir获取 SDCard 上可以写入文件的目录。使用null作为一般文件的参数。

路径为/mnt/sdcard/Android/data/[package]/files

关于java - Android 文件读写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13900356/

相关文章:

android - 为什么使用 Binding Interface 会导致 Class Not Found 异常?

android - 在绝对布局中设置图像位置

java - 由于值中的额外引号,Jackson- Json 解析失败

java - 如何在 XSLT 2.0 中获取当前 xml 文件名?

android - 致命异常 : while Running android program

android - 足以生成 GeoJSON 的最少数据量?

java - 如何在android studio中将布局从约束更改为相对?

java - 为什么我的 Spring Boot Web 应用程序无法加载其配置属性?

java swing cardLayout.show() 什么都不做

android - 巴士座位预订管理