gpt4 book ai didi

java - 文件读取器未读取正确的值

转载 作者:行者123 更新时间:2023-12-02 07:42:54 27 4
gpt4 key购买 nike

我对 Java 还很陌生,我已经编写了两个小函数来读取数据并将数据写入文件。写入的数据是游戏中 map 上角色的 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;
}

为什么程序读取文件时出现如此严重的错误,我该怎么办?

最佳答案

您的读取方法正在读取文件的前两个字符:“2”和“3”。您可能想使用 BufferedReader.readLine()

另请参阅 Integer.parseInt(String)

关于java - 文件读取器未读取正确的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10804055/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com