简单的保存文件没有在ddms中显示,也无法在我的设备上找到该文件?

时间:2015-08-07 12:05:56

标签: android

我在Android手机上尝试这个简单的保存.txt,但我找不到ddms->文件浏览器的文件;数据文件夹为空/不可扩展(因此不显示数据/数据/ [包名称] /文件)。 另外在我的Android设备(moto G)上我找不到该文件。但是日志显示应该保存文件:

saveBtn.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {

            // Create a file in the Internal Storage

            String fileName = "MyFile.txt";
            String content = "hello world";

            FileOutputStream outputStream = null;
            try {
                storageDir = new File(
                    Environment.getExternalStoragePublicDirectory(
                            Environment.DIRECTORY_PICTURES
                    ),
                    getAlbumName()
            );
                outputStream = openFileOutput( fileName, Context.MODE_PRIVATE);
                outputStream.write(content.getBytes());
                outputStream.close();

                Log.d(SAVE_PROCESS, "File directory: "+storageDir +" File name: "+fileName + " directory "+getFilesDir());
            } catch (Exception e) {
                e.printStackTrace();
                Log.d(SAVE_PROCESS, "File not saved");
            }

        }
    });
}

3 个答案:

答案 0 :(得分:1)

我也有同样的问题。 我认为您的文件位于以下路径中。 在日食中: - Open File Explorer -> mnt -> shell -> emulated -> 0 -> DIRECTORY_PICTURES.

我希望这能回答你的问题。

答案 1 :(得分:0)

应用私人目录/data/data/[package name]仅供您的应用访问,但其他应用无法访问,并且通常无法从ADB / DDMS /通过手机USB端口访问。

如果你是手机的根,或安装Android的工程版本,你可以从PC运行命令adb root,或者从Android的root shell命令stop adbd; setprop service.adb.root 1; start adbd,这将以root权限重启ADB,然后您就可以访问/data/data下的目录。

或者只是将文件保存到SD卡,它可以从任何地方访问。

答案 2 :(得分:0)

您要将文件保存在图像的公共外部文件夹中,而不是保存在应用程序文件夹中(无法访问,如已经回答的那样)。您应该检查case R.id.home: hfragment = new homefragment(); FragmentTransaction hfragmentTransaction= getSupportFragmentManager().beginTransaction(); hfragmentTransaction.replace(R.id.frame, hfragment); hfragmentTransaction.commit(); //do ur task here or in fragment class return true; case R.id.notification: return true; default: Toast.makeText(getApplicationContext(),"Somethings Wrong",Toast.LENGTH_SHORT).show(); return true; 之类的路径(可能会略有不同,具体取决于您的手机)