Невозможно прочитать файл CSV с двойными кавычками в значении ячейки
Я пытаюсь прочитать файл CSV с такими строками:
"Текст";"Другой текст";"Текст с" "цитатами" ""
В моем соединении с плоским файлом я заполнил квалификатор Text как ". Когда я нажимаю на кнопку Preview, строки отображаются правильно: текст с" "кавычками"" (разве он не должен показывать только одну двойную кавычку между прочим?)
Но как только я пытаюсь выполнить пакет, возникает ошибка, говорящая о том, что разделитель столбцов не может быть найден:
[Source du fichier plat [1313]] Erreur *: "* Колонна для колонн " COL3 "- непостижима.
Если я удаляю эти двойные двойные кавычки внутри значения ячейки, это работает нормально.
Есть ли способ заставить SSIS читать эти ячейки с двойными кавычками?
Для тех же данных, вы можете увидеть, как 2008 против 2012 будет предварительный просмотр данных. Заметьте, что Col2 либо делает, либо не избегает двойных кавычек (текст с "кавычками" против текста с "" кавычками "")
В результате использования версии 2008 года произойдет сбой со следующими сообщениями об ошибках
Разделитель столбца для столбца "Col2" не найден.
Произошла ошибка при обработке файла "c:\ssisdata\so\input\so_36033443.txt" в строке данных 1.
Воспроизведение проблемы с использованием Biml следует
<Biml xmlns="http://schemas.varigence.com/biml.xsd">
<Connections>
<FlatFileConnection
FilePath="c:\ssisdata\so\input\so_36033443.txt"
FileFormat="FFF_36033443"
Name="FFSRC" />
</Connections>
<FileFormats>
<FlatFileFormat
Name="FFF_36033443"
IsUnicode="false"
HeaderRowDelimiter=";"
CodePage="1252"
TextQualifer="""
>
<Columns>
<Column Name="Col0" DataType="AnsiString" Length="10" Delimiter=";" CodePage="1252"/>
<Column Name="Col1" DataType="AnsiString" Length="20" Delimiter=";" CodePage="1252"/>
<Column Name="Col2" DataType="AnsiString" Length="20" Delimiter="CRLF" CodePage="1252"/>
</Columns>
</FlatFileFormat>
</FileFormats>
<Packages>
<Package Name="so_36033443">
<Tasks>
<Dataflow Name="DFT Demo Delimiter">
<Transformations>
<FlatFileSource
ConnectionName="FFSRC"
Name="FFSRC so_36033443" />
<DerivedColumns Name="DER Placeholder" />
</Transformations>
</Dataflow>
</Tasks>
</Package>
</Packages>
</Biml>