导出到.jar文件时"\n"不起作用

use*_*892 4 java jar filewriter bufferedwriter

我有一个我写的程序的输出文件.它由FileWriter和BufferedWriter编写.

    FileWriter errout = new FileWriter(new File("_ErrorList.txt"));
    BufferedWriter out = new BufferedWriter(errout);
Run Code Online (Sandbox Code Playgroud)

后来我使用类似的行写入文件.

    out.write("Product id:" + idin + " did not fetch any pictures.\n ");
Run Code Online (Sandbox Code Playgroud)

当我在Eclipse中简单地运行程序时,输出文件格式正确,每条消息都写在一个新行上.但是,当我导出到.jar文件时,它不再起作用并将每条消息放在一行上,就像"\n"不起作用一样.

我错误地使用FileWriter/BufferedWriter,还是在.jar文件中不起作用?

Fla*_*vio 5

你不应该直接使用'\n'.既可以使用out.newLine()以引入线断裂,或包裹BufferedWriter成一个PrintWriter,并使用out.println().

.jar无论如何,这与文件无关.更可能的是Eclipse很聪明并且显示换行符,而操作系统却没有.