Problem mit Codierung einer CSV Datei zum import in eine MySQL DB
-
Hallo Zusammen,
ich habe ein Problem mit der Codierung einer CSV Datei. Laut PSPad ist die Codierung der CSV Datei UTF-8. Wenn ich die Datei in meine MySQL DB importiere habe ich statt Umlaute nur wilde Zeichen. Speichere ich die CSV Datei in PSPad als Ansi und importiere dann, habe ich Umlaute.Jetzt habe ich die Funktion Utf8ToAnsi gefunden und wollte mir damit den Weg über PSPad sparen. Leider funktioniert das nicht. Wenn ich die Funktion einsetze habe leider trotzdem keine Umlaute.
Importieren tue ich so
ifstream ifs(ImportDatei.c_str()); // Open File // Alle Zeichen aus Datei lesen while (ifs.get(Buffer)) { // Wenn Zeilenumbruch, Zeile abschließen und ausgeben if (Buffer == '\n') { daten_auslesen(line, DateiName, Statistik); line = ""; // Zeile leeren zeile++; // Zeilenanzahl erhöhen } // Wenn kein Zeilenumbruch, Zeichen an Zeile anhängen else { line += Buffer; } } // Wenn letzte Zeile vorhanden, diese ebenfalls ausgeben und berechnen if (line != "") { line = ""; zeile++; }
Anweden tue ich die Funktion so:
void daten_auslesen(AnsiString line, String DateiName, int *Statistik) { Utf8ToAnsi(line);
Kann mir jemand weiterhelfen? Mache ich was falsch? Kann ich irgendwie festestellen was für ein Unicode meine Variable hat?
Danke im voraus.
-
Du wendest auf jeden Fall Utf8ToAnsi falsch an, weil du dessen Rückgabe gar nicht auswertest.