API Azure REST - восстановление Создание / обновление управляемого экземпляра SQL из API

Вчера я столкнулся с подобной проблемой. Мы получили файл csv, который использует запятую (,) как разделитель и двойную кавычку (") в качестве текстового классификатора, но есть поле, содержащее двойную кавычку в двойной кавычки (неэкранированная двойная кавычка внутри строки). Проведя половину дневного поиска , придумал решение ниже,

var fileContent = File.ReadAllLines(fullFilePath); //load the file into a one dimensional string array. fullFilePath is the full path + the file name. var fileContentUpdated = fileContent.Select(x => new Regex(@"(?<!^)(?<!\,)""(?!\,)(?!$)").Replace(x, "'")).ToArray(); //this line here finds the double quote within the double quote and replace it with single quote File.WriteAllLines(fullFilePath, fileContentUpdated); //write the string array into the csv file.

Я не вижу другого способа, кроме замены двойной цитаты чем-то другим, чтобы избежать проблемы.

0
задан Scott Woodward 18 March 2019 в 15:45
поделиться