В настоящее время я просматриваю разбиение CSV-файла, который считывается в приложение запятой, однако есть законные запятые, заключенные в двойные кавычки, которые становятся разделенными, когда я не хочу они должны быть.parse csv file, игнорируя запятую, содержащиеся в кавычках C#
при использовании TextFieldParser это чтение полей, которые я хочу прочитать, однако его чтение всех полей, а затем я изо всех сил пытаюсь получить их на правильных строках.
public string ParseCSVForFields(string dataFileName)
{
var sb = new StringBuilder();
var line = new List<string>();
using (TextFieldParser parser = new TextFieldParser(dataFileName))
{
parser.TextFieldType = FieldType.Delimited;
parser.SetDelimiters(",");
parser.HasFieldsEnclosedInQuotes = true;
while (!parser.EndOfData)
{
//Processing row
string currentRow = parser.ReadLine();
string[] fields = parser.ReadFields();
foreach (var field in fields)
{
// this is where i am stuck
}
}
}
return null;
}
любая помощь будет очень признательна.
благодарит
Сделай сам? Или зайдите и используйте filehelpers http://filehelpers.sourceforge.net/ – Pleun
HasFieldsEnclosedInQuotes означает, что ваши значения и заключены в кавычки вроде: «val, val2, val3», «val4», тогда парсер вернет «val, val2, val4 "| "val4" –
Я не понимаю проблему из текущего описания. Не могли бы вы представить пример ввода, ожидаемого вывода и фактического вывода? – Dialecticus