使用BufferedWriter在文件中写入整数

克里斯 :

我有一种写入文件的方法,但是以某种方式在写入文件时遇到了问题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那也很好。

关于如何解决此问题的任何想法?

扬·哈德(Jan Held):

发生的事情是,当您编写int而不将其转换为String时,它只是将int编写为它的类型(一个int)。因此,调用方法如下:

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

将以下字节写入文件:

03 00 01 02

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

我假设基于要编写的文件类型,您希望将整数写为字符串。因此,在编写它之前,您只是做了正确的事情即可将其转换。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

BufferedWriter将不写入文件

如何使用arraylist在文件中写入对象

如何使用BufferedWriter写入标准输出

在Java中,使用BufferedWriter附加到文件有什么好处?

为什么bufferedwriter不写入文件?

我是否需要使用BufferedWriter和FileWriter在将数据写入同一文件时实现同步?

在Java中,使用BufferedWriter或直接写入文件有什么区别?

使用BufferedWriter将相同的数据写入多个文件

如何使用缓冲写入器在文件中逐行写入?

使用BufferedWriter将arrayList <模型类>写入txt文件

BufferedWriter不会在文件中为添加了“ \ n”的字符串写入新行

使用BufferedWriter写入字符串

无法使用BufferedWriter将双精度写入文件

为什么BufferedWriter不通过打开的FileChannel写入文件?

如何在csv文件中写入完整数据

我的资源文件夹中的文件没有使用try-with-resources和BufferedWriter写入,为什么?

使用XMLHttpRequest在JS中写入文件吗?

在Java中从文件读取并将其写回到文件(难以理解Java中的BufferedWriter写入方法)

BufferedWriter将0作为\ 00写入文本文件

计算通过GZIPOutputStream形成的BufferedWriter写入文件的字节数

使用php在列中写入.txt文件

写入文件-整数

BufferedWriter 在刷新和关闭后不写入文件

为什么 BufferedWriter 不会在文件中写入所有行?

在 HDFS 中写入文件 - 使用 TextIO API 与 Java - BufferedWriter(new FileWriter())

Java BufferedWriter 不写入文件

编码,在文件中写入一个整数

为什么 BufferedWriter 将数据部分写入文件?

写入文件时,如何让 BufferedWriter 从 ArrayList 中删除括号?