diff --git a/ooxml/XSSF/Streaming/SheetDataWriter.cs b/ooxml/XSSF/Streaming/SheetDataWriter.cs index c2d9a511d..69a0b63e9 100644 --- a/ooxml/XSSF/Streaming/SheetDataWriter.cs +++ b/ooxml/XSSF/Streaming/SheetDataWriter.cs @@ -471,12 +471,19 @@ protected void OutputQuotedString(string s) break; // Special characters case '\n': + if(counter > last) + { + WriteAsBytes(GetSubArray(chars, last, counter - last)); + } + WriteAsBytes(" "); + last = counter + 1; + break; case '\r': if (counter > last) { WriteAsBytes(GetSubArray(chars, last, counter - last)); } - WriteAsBytes(" "); + WriteAsBytes(" "); last = counter + 1; break; case '\t': diff --git a/testcases/ooxml/XSSF/Streaming/SheetDataWriterTests.cs b/testcases/ooxml/XSSF/Streaming/SheetDataWriterTests.cs index 3642123c4..a997d923a 100644 --- a/testcases/ooxml/XSSF/Streaming/SheetDataWriterTests.cs +++ b/testcases/ooxml/XSSF/Streaming/SheetDataWriterTests.cs @@ -333,7 +333,7 @@ public void IfCellTypeIsStringShouldWriteStringCellXml() var lines = File.ReadAllLines(_objectToTest.TemporaryFilePath()); Assert.True(lines.Length == 1); - Assert.AreEqual("\'\'<> &"? test:SLDFKj ", lines[0]); + Assert.AreEqual("\'\'<> &"? test:SLDFKj ", lines[0]); }