Einzelnen Beitrag anzeigen

Gelmo

Registriert seit: 14. Sep 2006
Ort: Niederrhein
29 Beiträge
 
Delphi 10.3 Rio
 
#1

Problem mit Sonderzeichen beim Einlesen von CSV-Dateien

  Alt 15. Okt 2020, 18:13
Hallo zusammen!
Ich habe mir in Excel eine Liste mit französischen Vokabeln incl. ihrer Sonderzeichen angelegt (z.B. ç = [links-Alt] 135). Wenn ich die als CSV-Datei abspeichere, kann ich sie mit Excel, Libre Office Calc oder dem Windows-Editor öffnen, und die Sonderzeichen werden korrekt dargestellt.
Wenn ich die CSV-Datei aber als Textfile in Delphi einlese, werden die Sonderzeichen nicht korrekt wiedergegeben.
Ich bin ratlos, wie dies Problem gelöst werden kann. Meine Vorstellung ist, dass man Delphi mitteilen muss, dass es sich um Unicode-Zeichen handelt. Vielleicht kann mir hier jemand weiter-helfen.
Dafür schon im Voraus herzlichen Dank!
MfG Gelmo

Codebeispiel:
Delphi-Quellcode:
 
var
  Vokdatei,
  DSZ         : String;
  CSVF         : Textfile;
procedure TForm1.Button2Click(Sender: TObject);
begin

  VokDatei:=Opendialog1.FileName;
  filemode:=0; // read-only
  assignfile(CSVF,VokDatei);
  reset(CSVF);
  while not eof(CSVF) do begin
    readln(CSVF,DSZ); // DSZ = Datensatz
    showMessage(DSZ);
  end;
end;
Ergebnis:
Excel: mère français «bientôt»
Editor : mère;français;«bientôt»
Delphi : mère;français;«bientôt»

P.S.
Zusatzbemerkung : Als Separator verwendet Excel offenbar das Semikolon, aber was dient als Delimiter? Ist aber aktuell nicht von Bedeutung, da die Datensätze „technisch“ richtig übernommen werden.
  Mit Zitat antworten Zitat