gpt4 book ai didi

java - Java中的回车\换行

转载 作者:IT老高 更新时间:2023-10-28 20:31:23 25 4
gpt4 key购买 nike

我在 Unix 环境中使用 Java 代码创建了一个文本文件。

为了编写文本文件,我使用 java.io.FileWriterBufferedWriter。对于每一行之后的换行符,我使用 bw.newLine() 方法(其中 bwBufferedWriter 的对象)。

我通过从 Unix 环境本身附加邮件来发送该文本文件(使用 Unix 命令自动执行)。

我的问题是,在我从 Windows 系统的邮件中下载文本文件后,如果我打开该文本文件,数据未正确对齐。 newline() 字符是不工作,我想是的。

如果我打开Windows 环境中的文本文件。

我该如何解决这个问题?

以下Java代码供您引用(在Unix环境下运行):

File f = new File(strFileGenLoc);
BufferedWriter bw = new BufferedWriter(new FileWriter(f, false));
rs = stmt.executeQuery("select * from jpdata");
while ( rs.next() ) {
bw.write(rs.getString(1)==null? "":rs.getString(1));
bw.newLine();
}

最佳答案

Java 只知道它当前运行的平台,因此它只能在该平台上为您提供与平台相关的输出(使用 bw.newLine())。您在 Windows 系统上打开它意味着您必须在使用它之前转换文件(使用您编写的东西,或者使用像 unix2dos 这样的程序),或者您必须使用 Windows 格式的回车输出文件最初在您的 Java 程序中返回。因此,如果您知道该文件将始终在 Windows 机器上打开,则必须输出

bw.write(rs.getString(1)==null? "":rs.getString(1));
bw.write("\r\n");

值得注意的是,如果您使用的只是纯文本,您将无法输出在两个平台上看起来都正确的文件,如果是电子邮件,您可能需要考虑使用 html,或者xml 如果是数据。或者,您可能需要某种客户端来读取数据,然后针对查看器使用的平台对其进行格式化。

关于java - Java中的回车\换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2832756/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com