Skip to content

Commit 9214eea

Browse files
authored
Fields containing double-quotes in the middle raise warnings and eventually an error (#988)
1 parent 712cd87 commit 9214eea

1 file changed

Lines changed: 11 additions & 5 deletions

File tree

src/Norm/base/InputBufferedFile.cpp

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -550,15 +550,21 @@ void InputBufferedFile::AddEncodingErrorMessage(longint lErrorNumber, const Obje
550550

551551
// Specialisation dans le cs d'une seule erreur
552552
if (lErrorNumber == 1)
553-
sMessage = "As one encoding error related to missing double quotes has been identified";
553+
sMessage = "One field with unescaped double quotes has been detected. ";
554554
// Cas avec plusieurs erreur
555555
else
556-
sMessage = sMessage + "As " + LongintToString(lErrorNumber) +
557-
" encoding errors related to missing double quotes have been identified";
556+
sMessage = sMessage + LongintToString(lErrorNumber) +
557+
" fields with unescaped double quotes have been detected. ";
558558

559559
// Fin du message
560-
sMessage += ", your database may include multi-line fields.";
561-
sMessage += " It is recommended to recode it using single-line encoding.";
560+
sMessage +=
561+
"According to the CSV standard (RFC 4180), a double quote inside a field "
562+
"must be escaped by doubling it. "
563+
"The affected fields may have been incorrectly parsed, leading to potentially incorrect results. "
564+
"The processing was performed despite these errors. However, it is strongly recommended to "
565+
"re-encode your file to comply with the CSV standard and reprocess it. "
566+
"Note that Khiops does not support multi-line fields; "
567+
"if your file contains such fields, the corresponding records will be corrupted.";
562568

563569
// Affichage en isolant la ligne d'erreur entre deux lignes blanches
564570
errorSender->AddSimpleMessage("");

0 commit comments

Comments
 (0)