Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将文件保存到Android中的任何特定路径_Java_Android_Fileoutputstream - Fatal编程技术网

Java 如何将文件保存到Android中的任何特定路径

Java 如何将文件保存到Android中的任何特定路径,java,android,fileoutputstream,Java,Android,Fileoutputstream,我可以创建文件。它正在/data/data/com.mypackage.app/files/myfile.txt上创建。但我想在内部存储上创建/Android/data/com.mypackage.app/files/myfiles.txt位置。我该怎么做 代码: public void createFile() { File path = new File(this.getFilesDir().getPath()); String fileName = "myfile.t

我可以创建文件。它正在/data/data/com.mypackage.app/files/myfile.txt上创建。但我想在内部存储上创建/Android/data/com.mypackage.app/files/myfiles.txt位置。我该怎么做

代码:

public void createFile()  {

    File path  = new File(this.getFilesDir().getPath());
    String fileName = "myfile.txt";
    String value = "example value";

    File output = new File(path + File.separator + fileName);

    try {
        FileOutputStream fileout = new FileOutputStream(output.getAbsolutePath());
        OutputStreamWriter outputWriter=new OutputStreamWriter(fileout);
        outputWriter.write(value);
        outputWriter.close();
        //display file saved message
        Toast.makeText(getBaseContext(), "File saved successfully!",
                Toast.LENGTH_SHORT).show();
    }
    catch (IOException e) {
        Log.e("Exception", "File write failed: " + e.toString());
    }

}
更新:

我解决了这个问题。也许有人能帮忙。只换这一行

File output = new File(getApplicationContext().getExternalFilesDir(null),"myfile.txt");

您可以使用以下方法获取根目录:

File path = context.getExternalFilesDir(Environment.DIRECTORY_PICTURES);
除了使用
目录图片
之外,您还可以使用
目录音乐
目录播客
目录铃声
目录警报
目录图片
,或
目录电影

请参阅此处的更多信息:


谢谢你,帕特里克。这是工作,我创立了解决方案。你的解决方案也奏效了,我试过了。我更新了问题。谢谢你的帮助,谢谢你的回答。这个答案很有帮助,我将在上面添加一个小指南。