Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.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 创建txt文件时出错_Java_Android_File - Fatal编程技术网

Java 创建txt文件时出错

Java 创建txt文件时出错,java,android,file,Java,Android,File,我正在尝试创建一个文件来保存一个标志,我将在以后的执行中需要它。 这是我为创建文件而编写的代码: FileOutputStream fileout=openFileOutput("flag.txt", MODE_PRIVATE); OutputStreamWriter outputWriter=new OutputStreamWriter(fileout); outputWriter.write("1"); outputWriter.close(); 我在随后执行应用程序并尝试通过以下代码读取

我正在尝试创建一个文件来保存一个标志,我将在以后的执行中需要它。 这是我为创建文件而编写的代码:

FileOutputStream fileout=openFileOutput("flag.txt", MODE_PRIVATE);
OutputStreamWriter outputWriter=new OutputStreamWriter(fileout);
outputWriter.write("1");
outputWriter.close();
我在随后执行应用程序并尝试通过以下代码读取文件内容时检测到问题:

File f = new File("flag.txt");
if (f.exists())
   Toast.makeText(this, "The file exists", Toast.LENGTH_LONG).show();
else
   Toast.makeText(this, "The file wasn't created", Toast.LENGTH_LONG).show();

但它总是跟随“else”分支。有什么想法吗?

要获取文件,请指定文件的目录

File file = new File(Environment.getExternalStorageDirectory(), "flag.txt");

您不能改用
SharedReferences
吗?更简单。在我看来,仅仅为一个标志创建一个文件真的是个坏主意;问题是,在调用文件时,如果没有显式设置父目录,则父目录是不正确的。使用2参数函数并将其传递给适当的父级。从表面上看,我会跳过使用openFileOutput,取而代之的是像InternalFileDir这样的显式目录,只是为了避免猜测Android在哪里编写该文件。最后,我决定使用SharedReferences,这是我以前不知道的。谢谢大家