Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.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 尝试保存游戏时FileNotFoundException_Java_Android - Fatal编程技术网

Java 尝试保存游戏时FileNotFoundException

Java 尝试保存游戏时FileNotFoundException,java,android,Java,Android,当我试图保存我的android游戏(通过Windows笔记本电脑上的android模拟器玩)时,我得到一个FileNotFoundException。我花了数小时尝试不同的东西,但仍然感到困惑,因为代码在我以前的版本(不适用于Android)上运行得非常完美 FileOutputStream saveStream; ObjectOutputStream savePlayerObject = null; String destinationFile = player1.getName() + ".

当我试图保存我的android游戏(通过Windows笔记本电脑上的android模拟器玩)时,我得到一个
FileNotFoundException
。我花了数小时尝试不同的东西,但仍然感到困惑,因为代码在我以前的版本(不适用于Android)上运行得非常完美

FileOutputStream saveStream;
ObjectOutputStream savePlayerObject = null;
String destinationFile = player1.getName() + ".txt";

try
{
   saveStream = new FileOutputStream(destinationFile);    
   savePlayerObject = new ObjectOutputStream(saveStream);   
   savePlayerObject.writeObject(player1);
}

catch(FileNotFoundException ex)
{
   Toast toast = Toast.makeText(getApplicationContext(), "Save Failed", Toast.LENGTH_LONG);
   toast.show();
}


catch(IOException ex)
{
   Toast toast = Toast.makeText(getApplicationContext(), "Save Failed", Toast.LENGTH_LONG);
   toast.show();
}


finally
{
   try
   {
      if(savePlayerObject !=null)
      {
         savePlayerObject.flush();    
         savePlayerObject.close();   
         Toast toast = Toast.makeText(getApplicationContext(), "Thank-You For Playing, See You Soon", Toast.LENGTH_LONG);
         toast.show();   
         System.exit(0);   
      }
   }

   catch(IOException ex)
   {
      Toast toast = Toast.makeText(getApplicationContext(), "Save Failed", Toast.LENGTH_LONG);
      toast.show();
   }
}

这意味着程序无法在指定位置创建文件

String destinationFile = player1.getName() + ".txt";

该文件将在当前工作目录中创建。这通常不是你想要的。您需要考虑文件的确切位置,然后指定绝对路径。

这意味着程序无法在指定位置创建文件

String destinationFile = player1.getName() + ".txt";

该文件将在当前工作目录中创建。这通常不是你想要的。您需要考虑文件的确切位置,然后指定绝对路径。

可能您没有创建新文件所需的权限。

可能您没有创建新文件所需的权限