QTextStream encoding auf 8859 einstellen für Umlaute

Alles rund um die Programmierung mit Qt
Antworten
dr141
Beiträge: 8
Registriert: 13. Juli 2008 00:29

QTextStream encoding auf 8859 einstellen für Umlaute

Beitrag von dr141 »

Hallo,

ich habe ein in "ISO-8859 text" (mit Linux-Befehl #file) kodiertes Textfile, in dem auch deutsche Umlaute stehen. Die will ich erhalten, wenn ich Zeilen (oder Teile davon) in QStrings speichere.
Ich habe es so versucht:

Code: Alles auswählen

if ( file.open(QIODevice::ReadOnly) ) {
		QTextStream stream(&file);
		const char* c = "ISO-8859";
		//stream.setCodec(QTextCodec::codecForName(c));
		stream.setCodec(c);
		//stream.setDevice(&file);
		QString line;
		while ( !stream.atEnd() ) {
...
Ging aber nicht. :? Jemand eine Idee?
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

ISO-8859 ist eine ganze Familie. Da fehlt noch eine Nummer dahinter um eine eindeutige Kodierung zu beschreiben. Probier es mit ISO-8859-1.
http://de.wikipedia.org/wiki/ISO_8859
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
Antworten