CSV файл с двойным интервалом - PullRequest
0 голосов
/ 04 июля 2018

У меня проблемы с OpenOffice Calc, открывающим файл CSV, который я создаю с помощью StreamWriter C #. Когда он открывается, он имеет пустые строки между каждой строкой, которая должна быть там (с двойным интервалом). Кажется, что есть некоторое удвоение возвратов каретки. Когда я открываю его в блокноте, он читается правильно. Когда я изменил программу, чтобы писать целые числа вместо строк, проблема ушла. Кажется, что он добавляет возврат в конец каждой строки, а затем форматирование добавляет еще один возврат, которого я не вижу.

Вывод выглядит так ...

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 голосов
/ 04 июля 2018

Изменение

sw.WriteLine(element);

до

sw.WriteLine(element.Trim());

или, может быть

sw.WriteLine(element.TrimEnd());

Сначала обрежьте элемент. Это удалит все LineFeeds или другие пробельные символы вокруг «краев» символов. Тогда CRLF от StreamWriter будут единственными существующими символами новой строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...