gpt4 book ai didi

java - 复制二进制文件会将换行符更改为窗口标准..? java

转载 作者:行者123 更新时间:2023-12-01 16:01:23 25 4
gpt4 key购买 nike

由于某种原因,此代码正在更改输入中的任何“\n”字符,并在新的输出文件中将其替换为“\n\r”。我引用了几个网站,但仍然没有弄清楚..有人有想法吗?非常感谢!

Socket connectionSocket = sData.accept();
InputStream inputStream = connectionSocket.getInputStream();
BufferedInputStream inputBufferedStream = new BufferedInputStream(inputStream);
FileOutputStream outputStream = new FileOutputStream("/home/greg/1");


byte[] buffer = new byte[1024];
long count = 0;
int n = 0;
while ((n = inputBufferedStream.read(buffer))>=0) {
outputStream.write(buffer, 0, n);
count += n;
}
outputStream.close();
}

最佳答案

特定的代码并没有这样做。可能这些 \r\n 已经在输入源中了。

只有当您使用 BufferedReader#readLine() 读取换行符并使用 PrintWriter#println() 附加内容来写入时,才会发生这种情况平台默认换行符。对方大概也是这么做的吧?毕竟,Reader/Writer 不应该用于二进制数据。它可能会使其变形。使用 InputStream/OutputStream 来实现。

关于java - 复制二进制文件会将换行符更改为窗口标准..? java ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3795441/

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