Расщепление строк и CSV C # - PullRequest
       11

Расщепление строк и CSV C #

1 голос
/ 01 декабря 2011

Я написал экспортер, который экспортирует строки в .csv

Дело в том, что некоторые из этих строк уже содержат запятые:

2 CAR MODELS, 5 TEAMS,2 CAR MODELS, 5 TEAMS

Вы видите, что запятые, добавленные в строки вручную, имеют один пробел после них. Тот, который я добавил, не имеет пробелов.

Я написал код, чтобы прочитать строку и разделить ее:

while ((line = stringReader.ReadLine()) != null)
        {
            // split the string at each comma
            string[] split = line.Split(new char[] { ',' });

Мне нужно, чтобы строка разделялась в ',', а НЕ в ','.

Есть идеи?

Я не могу использовать любой сторонний код, подобный этому:

http://www.codeproject.com/KB/database/CsvReader.aspx

Ответы [ 3 ]

3 голосов
/ 01 декабря 2011

Вы можете использовать TextFieldParser - он находится в пространстве имен Microsoft.VisualBasic.FileIO, поэтому не "третий участник".

1 голос
/ 01 декабря 2011

Вы можете сделать это с помощью Regex.Split в пространстве имен System.Text.RegularExpressions.

http://msdn.microsoft.com/en-us/library/b5k3ak3e.aspx

1 голос
/ 01 декабря 2011

Вы можете рассмотреть возможность использования Regex.Split (String arg1, String arg2) . Это должно позволить вам разбить строку в соответствии с регулярным выражением.

Затем вы можете использовать регулярное выражение, как это:

,[^\s]+

Это должно позволить вам разделять значения, которые имеют запятую, но не сопровождаются одним или несколькими пробелами.

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