CSV文件双倍行距

时间:2018-07-04 14:03:00

标签: c# csv streamwriter

我在使用OpenOffice Calc打开使用StreamWriter C#创建的CSV文件时遇到麻烦。当打开时,它应该在每行之间有空行(双倍行距)。回车的价格似乎翻了一番。当我在记事本中打开它时,它可以正确读取。当我将程序更改为写整数而不是字符串时,问题就消失了。似乎是在每个字符串的末尾添加了一个返回值,然后格式化又添加了一个我没有看到的返回值。

输出看起来像这样...

1...

2...

3...

输出应如下所示...

1...
2...
3...

这是我用来将列表写入文件的ForEach循环...

using (StreamWriter sw = new StreamWriter(@"c:\andy\Arduino StreamWriter.csv", false, Encoding.UTF8))
        {
            foreach (string element in SerialPortString)
            {
                sw.WriteLine(element);
            }
        }

每行只有一个数据字段,因此没有定界符,只有换行。我尝试格式化,以便在每个字段周围都写上引号,以期消除CSV格式的混乱,但是我也无法弄清楚。

任何帮助将不胜感激。

谢谢。

1 个答案:

答案 0 :(得分:0)

更改

sw.WriteLine(element);

sw.WriteLine(element.Trim());

或者也许

sw.WriteLine(element.TrimEnd());

首先修剪元素。这将删除字符“边缘”周围的所有LineFeed或其他空白字符。然后,StreamWriter的CRLF将是唯一出现的换行符。