2016-09-16 4 views
-1

У меня есть строка, которая приходит из CSV-файла, какSplit разделенные запятой несколько строк в C#

"[email protected]","seattle,US","9999 00000" 

Ожидаемый результат:

[email protected] 
seattle,US 
9999 00000 

Фактический выход, когда я string.Split(','):

"[email protected]" 
"seattle 
US" 
"9999 00000" 
+1

Показать, что вы сделали –

+0

Используйте реальный CSV анализатор не String.split –

+0

Параметр 'split' не может понять, что у вас на уме, - это правильно работать для выхода - если вам нужно что-то другое, просто введите код. – Aristos

ответ

0

Если вы используете " персонаж для квалификации столбца, вы можете разделить его на ","

string input = "\"[email protected]\",\"seattle,US\",\"9999 00000\""; 

string[] result = input.Trim('"').Split(new string[] { "\",\"" }, StringSplitOptions.None); 
+0

Не уменьшены, но это не очень хороший подход. Разделитель явно является запятой, а не кавычками. работает в этом случае, хотя –

+0

@TimSchmelter, но кавычки даже существуют, если в их содержимом нет запятых – fubo

+1

Если каждое поле в каждой строке окружено кавычками, разделение на «,» кажется мне прекрасным. Что не так с этим ответом ? –

Смежные вопросы