Java 如何使用FileWriter向文件中的内容添加换行符

Java 如何使用FileWriter向文件中的内容添加换行符,java,Java,我正在尝试使用以下代码在文本文件中写入换行分隔数据: BufferedWriter bufferedWriter=null; FileWriter fileWriter=null; ArrayList<String> count=new ArrayList<>(); count.add("2"); count.add("4"); fileWriter=new FileWriter(fileName); buffered

我正在尝试使用以下代码在文本文件中写入换行分隔数据:

BufferedWriter bufferedWriter=null;
    FileWriter fileWriter=null;


    ArrayList<String> count=new ArrayList<>();
    count.add("2");
    count.add("4");
    fileWriter=new FileWriter(fileName);

    bufferedWriter=new BufferedWriter(fileWriter);
    bufferedWriter.write(String.valueOf(count));
    PrintWriter printWriter=new PrintWriter(fileWriter);
    printWriter.write(count + "\n");

    bufferedWriter.close();
    printWriter.close();
我如何获得如下数据:

[2, 4][2, 4]
2
4
3
54
我更喜欢直接结束。此外,我还将使用a来迭代
列表中的值(并编程到接口)。像

List count=Arrays.asList(“2”、“4”、“3”、“54”);
try(PrintWriter pw=new PrintWriter(new BufferedWriter(
新文件编写器(文件名))){
for(字符串s:count){
pw.println(s);
}
}捕获(IOE异常){
e、 printStackTrace();
}

“\n”是Unix新行。在Windows上,它是“\r\n”,您需要在String.format中使用System.lineSeparator()或“%n”,才能使用适合您系统的格式。使用BufferedReader和PrintReader将同一文件打印两次,这非常奇怪。你为什么两者都需要?。显然,你只写了2和4,因为这些都在你的数据中

代码中有大量不必要的东西。声明变量时只需初始化

List<String> count = Arrays.asList("2", "4", "3", "54");
try(PrintWriter printWriter = new PrintWriter(new File(fileName)){
        count.stream().forEach(printWriter::println);
} // auto-closes the streams
List count=Arrays.asList(“2”、“4”、“3”、“54”);
try(PrintWriter PrintWriter=new PrintWriter(新文件名)){
count.stream().forEach(printWriter::println);
}//自动关闭流
您想要的内容可以这样编写,因此您根本不需要执行换行,因为println会为您处理它。

BufferedWriter-BufferedWriter=null;
    BufferedWriter bufferedWriter=null;
    FileWriter fileWriter=null;

    ArrayList<String> count=new ArrayList<>();
    count.add("2");
    count.add("4");
    count.add("3");
    count.add("54");
    fileWriter=new FileWriter(fileName);


    bufferedWriter=new BufferedWriter(fileWriter);

    for(int i = 0;i < count.size();i++){
        bufferedWriter.write(String.valueOf(count.get(i)) + "\n");
    }

    bufferedWriter.close();
FileWriter FileWriter=null; ArrayList计数=新建ArrayList(); 计数。添加(“2”); 计数。添加(“4”); 计数。添加(“3”); 计数。添加(“54”); fileWriter=新的fileWriter(文件名); bufferedWriter=新的bufferedWriter(fileWriter); 对于(int i=0;i
    BufferedWriter bufferedWriter=null;
    FileWriter fileWriter=null;

    ArrayList<String> count=new ArrayList<>();
    count.add("2");
    count.add("4");
    count.add("3");
    count.add("54");
    fileWriter=new FileWriter(fileName);


    bufferedWriter=new BufferedWriter(fileWriter);

    for(int i = 0;i < count.size();i++){
        bufferedWriter.write(String.valueOf(count.get(i)) + "\n");
    }

    bufferedWriter.close();