gpt4 book ai didi

java - 使用 BufferedWriter 在文件中写入整数

转载 作者:行者123 更新时间:2023-12-02 01:04:16 24 4
gpt4 key购买 nike

我有一种写入文件的方法,但不知何故在写入 int 时遇到问题:

public static void writeFile(int[] result) {
try {
FileWriter writer = new FileWriter("MyFileExample.txt", true);
BufferedWriter bufferedWriter = new BufferedWriter(writer);

int counter = 0;
for (int j = 0; j < result.length; j++) {
if (result[j] != -1) {
counter++;
}
}
System.out.println(counter);


bufferedWriter.write(counter);

bufferedWriter.newLine();

for(int i = 0; i<result.length; i++) {
if (result[i] != -1) {
bufferedWriter.write(i + " ");
}
}






bufferedWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
}

线路bufferedWriter.write(counter);没有写任何东西。只是一片空白。其余的都写得很好。我尝试写 "test"而不是counter这也完全没问题。

知道如何解决这个问题吗?

最佳答案

发生了什么,当您编写 int 而不将其转换为 String 时,它只是将 int 编写为其本身的类型(int)。因此调用该方法,例如如下:

writeFile(new int[] {1, 2, 3})

将以下字节写入文件:

03 00 01 02

如果您引用 ASCII 表,它们都是不可打印的字符。

根据您想要写入的文件类型,我假设您希望将整数写入字符串。所以你在编写它之前做了正确的事情来转换它。

关于java - 使用 BufferedWriter 在文件中写入整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60265587/

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