ByteArrayOutputStream/InputStream losing newline characters on S3 Import

6.3k views Asked by At

I have the following code (pseudo code-ish)...

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

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

Then when I get the file from s3 it looks like this: somethingsomething.

The newlines are gone!! I can't figure out why that is happening and internet searches have not been helpful. Does anyone have any ideas?

1

There are 1 answers

1
user987339 On BEST ANSWER

It is common problem with *NIX vs Windows files.

Try : "\r\n" instead of "\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);