FileWriter不会追加新行

时间:2016-04-23 23:46:03

标签: java newline jfilechooser filewriter swingx

我不确定为什么我的输出功能在创建文件时没有获取换行符。这是代码:

private void outputToFile(){
    final JFileChooser fc = new JFileChooser();
    fc.setSelectedFile(new File("frequency.txt"));
    int returnVal = fc.showSaveDialog(null);
    File file = fc.getSelectedFile();
    try{
      FileWriter writer = new FileWriter(file);
      String out = this.toString();
      writer.append(out);
      writer.flush();
      writer.close();
    }
    catch(IOException e){
      System.out.println("Cancelled and aborted");
    }
  }

当我打印到命令行时,我的toString方法工作正常,但是在文件输出中删除了\ n的所有实例。以下是此函数的“损坏”输出示例(这是一个频率计数器)

输出文件: 问:5 \ n:7 C:1 a:5 t:6 s:3 (空间):6 r:1 e:4 c:1 o:2 l:3 。:2 W:1 ,:1 h:4 ':1 w:1 y:3 \ t:1 R:1 我:1 g:1 ?:1 B:1 !:1

每个号码后面应该有新行。

如果你想要我的全部课程,那么他们是:http://pastebin.com/CCLLBUqF

1 个答案:

答案 0 :(得分:1)

编写文件时,您需要同时包含换行符和换行符。 因此,在您添加toString()换行符的"\n"方法中,添加换行符和换行符:"\r\n"