java - Unix 换行符

标签 java linux unix

<分区>

我有一个在 Linux 机器上运行的 Java 应用程序,它正在生成一个文件,其中每条记录都由换行符分隔,

此文件将由在 Unix SunOS 系统上运行的应用程序使用,我下面的代码不会生成正确的文件。我的意思是当我在 Unix 系统中用 vi 编辑器打开它时,下面的代码生成一个文件,其中每一行都以 ^M 字符结尾

bw = new BufferedWriter(new FileWriter(file));
bw.write("\n");

为了在 Unix 系统中正确查看文件,我必须写哪个字符。

最佳答案

\n 是 Unix 的正确行结尾。它是使用 \r\n 作为行尾(带有 \r 或回车符)的窗口,看起来像 ^M。您可以使用 System.lineSeparator()为您的系统获得正确的行尾。您还可以使用 dos2unix 从文本文件中删除 dos 格式的换行符。

关于java - Unix 换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27571620/

相关文章:

java - 构造函数内部可用的 Spring Application Context

regex - 仅使用 'sed' 而不使用 'awk' 从记录中选择特定列

c++ - 在使用 gpp 编译器包编译和运行 c++ 文件后,Atom 正在主目录中创建一个 filename.o

qt - 尽管安装了 Qt,但未找到 qmake

shell - 从 Solaris KornShell 运行 .ksh 脚本

Java 函数参数中的隐式转换

java - Duby和Juby有什么区别?为什么我需要它们中的一个?

linux - 使用 bash 以特定方式输出文本文件的值?

linux - 用于从目录中获取文件到命令行的 Shell 脚本

java - 在 Jboss AS 7.1 Final 上找不到模块