German Problem beim Einlesen von Umlauten in Textfiles

mclane

New Member
Hallo,

ich habe ein Problem beim Einlesen von ASCII-Textdateien. Ein Text, der zeilenweise gelesen wird, enthält deutsche Umlaute. Diese werden beim Einlesen entweder durch ein "?" oder eine andere Zeichenfolge ersetzt, abhängig davon, ob ich die Datei mit

FileOpen(f1, Dateiname,cRead,,cASCII)

oder einfach nur

FileOpen(f1, Dateiname,cRead)

öffne. Ich habe bisher keine Lösung gefunden, das sauber einzulesen.

Gibt es da ein Workaround?

Vielen Dank für einen Hinweis.
 

specci48

Well-Known Member
Licensed User
Longtime User
Hallo mclane,

bist Du sicher, dass die Datei im ASCII-Format vorliegt, und nicht im Windows-konformen ANSI? Öffne Deine Datei mal mit dem Windows Notepad. Wird sie korrekt angezeigt? Falls ja, dann hast Du eine ANSI und keine ASCII Datei...

Wenn die Datei im Notepad korrekt sichtbar ist, dann mache folgendes:
Wähle Speichern unter..., unter dann in der Combobox "Codierung" das Format UTF-8. UTF-8 ist das Standardfomat bei Basic4ppc.

Nun solltest Du die Datei mit
B4X:
FileOpen(f1, Dateiname,cRead)
problemlos einlesen und anzeigen können.


specci48
 

mclane

New Member
Hallo specci48,

vielen Dank für Deine Informationen! Deine Vermutung war ein Volltreffer, ich hatte die Existenz von ANSI glatt verdrängt und irrtümlich ASCII unterstellt. Das Abpeichern in UTF-8 lieferte das vorhergesagte Ergebnis.

Trotzdem schade, dann wird mein Vorhaben wohl nicht klappen. Ich wollte Abrechnungsdaten in CSV-Textdateiform, die eine unterschiedliche Dateigröße von 10 Kilobyte bis zu 90 Megabyte haben mit einem Programm in der recht angenehm zu programmierenden Basic4PPC-Sprache bearbeiten. Dank .Net-Unterbau sind große Dateien ja kein Problem und das Lesen und Schreiben gelang recht flott. Das Programm sollte allerdings noch von Dritten ohne Mehraufwand zu benutzen sein. Leider klappt das nicht auf direktem Wege mit dem ANSI-Format.

Danke und Gruß
mclane
 
Top