Вы можете избежать этих значений, вставив поле в набор двойных кавычек. Для более подробной информации вы можете обратиться по этой ссылке
Формат файла CSV
------------ РЕДАКТИРОВАТЬ 1 ---------------------
Рассмотрим этот пример. Это запятая csv
Здесь вы можете увидеть столбец «ОК, 123; asw.wew» с ',' и ';'
Если мы откроем его с помощью блокнота или текстового редактора, мы увидим, что к нему автоматически добавляется escape-символ.
Вы должны кодировать таким образом, чтобы он разделялся на разделитель, а не на двойные кавычки.
-------------------------- РЕДАКТИРОВАТЬ 2 ---------------- ----------
Вы можете воспользоваться .net
классом TextFieldParser
. Чтобы использовать его
- добавить ссылку на
Microsoft.VisualBasic
(да, там написано VisualBasic, но она работает и в C #)
- использовать класс
Microsoft.VisualBasic.FileIO.TextFieldParser
для разбора CSV
файла
Вот пример кода:
using (TextFieldParser parser = new TextFieldParser(@"c:\test.csv"))
{
parser.TextFieldType = FieldType.Delimited;
parser.SetDelimiters(",");
while (!parser.EndOfData)
{
//Processing row
string[] fields = parser.ReadFields();
foreach (string field in fields)
{
//TODO: Process field
}
}
}
Вот еще несколько полезных ссылок: