我对 Java 很陌生,我已经编写了两个小函数来读取和写入数据到文件。写入的数据是游戏中地图上角色的 x 和 y 坐标。写入文件的数据似乎没问题:
234
-123
我使用以下代码编写数据:
public void save(int x, int y)
{
try
{
FileWriter fstream = new FileWriter("skygrim.txt"); //Create save-file
BufferedWriter out = new BufferedWriter(fstream); //New writer, connected to save-file
out.write(x + "\n" +y); //Write position to file
out.close(); //Close file
}catch (Exception e){System.out.println("Error: " + e.getMessage());}
}
当我稍后想读取数据时,为了能够“加载”保存的游戏,我从文件中获取以下值:
50
51
我使用以下代码从文件中读取:
public int[] read(String file)
{
int[] coordinates = new int[2];
try
{
FileReader fstream = new FileReader(file);
BufferedReader in = new BufferedReader(fstream);
coordinates[0] = in.read();
coordinates[1] = in.read();
in.close();
}catch(Exception e){System.out.println("Error" + e.getMessage());}
System.out.println("x: " + coordinates[0]);
System.out.println("y: " + coordinates[1]);
return coordinates;
}
为什么程序读取文件如此严重错误,我该怎么办?