【问题标题】:ByteArrayOutputStream/InputStream losing newline characters on S3 ImportByteArrayOutputStream/InputStream 在 S3 导入时丢失换行符
【发布时间】:2013-12-17 23:11:55
【问题描述】:

我有以下代码(伪代码)...

ByteArrayOutputStream output = new ByteArrayOutputStream();
output.write("something\n".getBytes());
output.write("something\n".getBytes());

ByteArrayOutputStream input = new ByteArrayInputStream(output.getBytes());
s3.putStream(input);

然后当我从 s3 获取文件时,它看起来像这样:somethingsomething.

换行符不见了!!我无法弄清楚为什么会发生这种情况,并且互联网搜索没有帮助。有人有什么想法吗?

【问题讨论】:

  • 如何检查文件?
  • 只是去 s3 控制台并在那里打开它。它显示为 txt 文件。

标签: java amazon-s3 newline bytearrayoutputstream bytearrayinputstream


【解决方案1】:

这是 *NIX 与 Windows 文件的常见问题。

尝试:“\r\n”而不是“\n”

ByteArrayOutputStream output = new ByteArrayOutputStream();
output.write("something\r\n"".getBytes());
output.write("something\r\n"".getBytes());

ByteArrayOutputStream input = new ByteArrayInputStream(output.getBytes());
s3.putStream(input);

【讨论】:

  • 这是一个很好的观点。我实际上是在 *NIX 系统上编写该代码,然后在 Windows 中读取它。我试试看,谢谢。
猜你喜欢
  • 2020-03-11
  • 2013-01-01
  • 2015-01-07
  • 2021-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-27
  • 1970-01-01
相关资源
最近更新 更多