我正在尝试制作一款具有有效高分机制的游戏,并且我正在使用 java.io.BufferedWriter 写入高分文件。我没有对高分进行加密,我使用 Slick2D 和 LWJGL 进行渲染和用户输入。程序执行这段代码:
FileWriter fstream = new FileWriter("res/gabjaphou.txt");
BufferedWriter writer = new BufferedWriter(fstream);
writer.write(score); // score is an int value
writer.close(); // gotta save m'resources! lol
我打开由此生成的文本文件,它读取的只是一个问号。我不知道为什么会这样,我使用了我正在制作的另一个项目中的其他代码,我对此没有任何问题......有人知道为什么吗?这真的很烦人! :C
最佳答案
BufferedWriter.write(int)旨在写入单个字符,而不是整数。
public void write(int c)
throws IOException
Writes a single character.
Overrides: write in class Writer
Parameters:c
-int
specifying a character to be written
Throws:IOException
- If an I/O error occurs
尝试
writer.write(String.valueOf(score));
关于java - BufferedWriter 表现得很奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11875815/