У меня есть текстовый файл в формате через запятую, разделенный "
в большинстве полей. Я пытаюсь передать это во что-то, через что я могу перечислить (например, Generic Collection). У меня нет контроля ни над тем, как выводится файл, ни над символом, который он использует для разделителя.
В этом случае поля разделяются запятой, а текстовые поля заключаются в отметки "
. Проблема, с которой я сталкиваюсь, заключается в том, что в некоторых полях есть кавычки (т. Е. 8 "
Tray), и они случайно выбираются в качестве следующего поля. В случае числовых полей у них нет кавычек вокруг них, но они начинаются со знака + или - (обозначая положительное / отрицательное число).
Я думал о RegEx, но мои навыки не так уж и хороши, так что, надеюсь, кто-то может предложить некоторые идеи, которые я смогу попробовать. В этом файле содержится около 19 000 записей, поэтому я стараюсь сделать это максимально эффективно. Вот пара примеров строк данных:
"00","000000112260 ","Pie Pumpkin ","RET","6.99 "," ","ea ",+0000000006.99000
"00","000000304078 ","Pie Apple caramel ","RET","9.99 "," ","ea ",+0000000009.99000
"00","StringValue here","8" Tray of Food ","RET","6.99 "," ","ea ",-00000000005.3200
Есть еще много полей, но вы можете получить изображение ....
Я использую VB.NET, и у меня есть общие настройки List для приема данных. Я попытался использовать CSVReader , и, кажется, он работает хорошо, пока вы не нажмете на запись, подобную 3-й (с цитатой в текстовом поле). Если бы я мог как-то заставить его обрабатывать дополнительные кавычки, тогда опция CSVReader будет работать отлично.
Спасибо!