Seite 1 von 1

Unicode (UTF8) in lokalen Zeichensatz wandeln

Verfasst: Freitag 11. Oktober 2002, 15:24
von hans
Arbeitet man mit Unicode (wird zb in QT verwendet), dann kann man den Text nicht einfach in eine Datei schreiben. Dieses würde bei Umlauten zu einem Fehler führen. So geht es aber:

Code: Alles auswählen

    fd = open('./text.txt', 'w')
    i = 0
    while i < self.textIn.numLines():
      _s = str(QString.local8Bit(self.textIn.getString(i)))
      print _s
      fd.write("%s\n" % _s )
      i += 1
    fd.close()
self.textIn ist in diesem Fall ein QMultiLineEdit Element. QString.local8Bit() liefert den String im aktuell verwendeten Zeichensatz. str() erzeugt daraus ein Python StringObjekt. Der Rest sollte Routine sein.

Hans