android文件系统上的数据文件在哪里?

时间:2014-02-20 10:21:28

标签: android file-io filesystems fileoutputstream

我可以将文件写入我的(三星)平板电脑的本地存储,其代码如下:

String fileName = "myfile.ser";
FileOutputStream fos = context.openFileOutput(fileName, Context.MODE_PRIVATE);
ObjectOutputStream os = new ObjectOutputStream(fos);
os.writeObject(this);
os.close();

使用类似的代码读取也没问题。我可以通过USB在连接的平板电脑的Windows资源管理器中看到文件系统。但是我无法发现Android文件系统上的文件“myfile.ser”是什么写的?

隐藏吗?

3 个答案:

答案 0 :(得分:4)

openFileOutput返回无法通过文件资源管理器访问的位置。它应该是/data/data/yourpackagename

答案 1 :(得分:1)

根据这个问题 What file system path is used by Android's Context.openFileOutput()?

openfileoutput()方法指向getFilesDir()上的Context返回的目录...

确实应该是/data/data/yourpackagename ......

答案 2 :(得分:1)

openFileOutput()从应用程序上下文中获取getFilesDir()的基目录。提到的路径是/ data / data / yourpackagename。

这些应用程序是沙盒,这意味着除了保存在外部存储上之外,应用程序自己的沙箱中还提供了与应用程序相关的文件。数据目录是操作系统内部的,即使您使用DDMS,也无法浏览数据目录。