如何访问我在内部存储器中保存的文件
问题描述:
我想编写一个程序,该文件用一些内容将文件保存在移动设备中。问题是我无法在移动设备的文件管理器中看到该文件。如何看到和在哪个文件夹?如何访问我在内部存储器中保存的文件
下面是代码:
import android.content.Context;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import java.io.FileOutputStream;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String fileName = "MyFile";
String content = "hello world";
FileOutputStream outputStream = null;
try {
outputStream = openFileOutput(fileName, Context.MODE_APPEND);
outputStream.write(content.getBytes());
outputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
编辑1:更新的代码
public class MainActivity extends AppCompatActivity {
String content = "hello world";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
File f= getExternalFilesDir("arnav");
Toast.makeText(this,""+f,Toast.LENGTH_SHORT).show();
File f1=new File(f,"ank.txt");
FileOutputStream outputStream = null;
try {
outputStream = openFileOutput(f1.getAbsolutePath(), Context.MODE_APPEND);
outputStream.write(content.getBytes());
outputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
现在的问题是,文件夹(arnav)是越来越创建,但文件(ank.txt)是没有得到创建?如何解决?
答
要访问通过你需要去以下位置的应用程序存储的文件:内部存储>安卓>数据> com.package_name.app_name>文件,在这里你可以找到应用程序保存的数据。
答
MainActivity.this.getFilesDir().getAbsolutePath()
将返回你的文件路径由 openFileOutput
问题产生的是,“com.package_name.app_name”是不是在这种情况下得到建立。我做错了什么吗?我需要提供清单中的任何权限吗? – Ankit
它应该被创建。这样的文件将始终为应用程序数据创建。请仔细检查,您的设备的内部存储。 –