0

我以前写过文件,从来没有遇到过这个问题,我完全糊涂了。

编辑:对不起,错误是没有行被写入 .txt 文件。

   System.out.println(upto); 
   FileWriter writer;
   BufferedWriter write;

   upto = 10;
    try{
    writer = new FileWriter(theFile);    
    write = new BufferedWriter(writer); 
    write.write(upto);
    write.flush();
    write.close();

    }catch(Exception e){
        System.err.println("cant print line");
    }

那是处理写入文件的代码,唯一的其他代码是声明文件路径。也没有出现异常错误。我确保我也在冲洗/关闭作家。有人可以帮忙吗?

4

2 回答 2

1

你在写一个数字。这意味着你写的是数字 ( 0x0000000A) 的字节,而不是它的字符表示10。当你用记事本或类似工具打开它时,它只是发现它不包含可打印的 ASCII 值,你只看到它是空白的。

write.write(Integer.toString(upto))来看区别。

于 2013-05-20T14:51:12.073 回答
1

您正在打印 char 10,这是一个换行符。如果要打印数字 10,请尝试

write.write(String.valueOf(upto));
于 2013-05-20T14:53:25.550 回答