QString & QByteArray kann kein sauberes ISO 8859-1
Verfasst: 13. Mai 2006 16:40
Ich schreibe ein programm um auf dem server die db zu aktualisieren...
php5 schreib es so: http://ppk.ciz.ch/format/sql/php5_export.sql
mit utf8_decode .... aus der selbe sqlite db
qt4 schreib es so: http://ppk.ciz.ch/format/sql/qt_export.sql
mit toLatin1()...
das einzige gemeinsame format das ich gefunden habe ist toBase64 dort kommt es richtig....
zwischen ä und ä ist doch eine welt an unterschied oder?
ist das ein bug oder muss man mit #include <QTextCodec> arbeiten...
php5 schreib es so: http://ppk.ciz.ch/format/sql/php5_export.sql
mit utf8_decode .... aus der selbe sqlite db
qt4 schreib es so: http://ppk.ciz.ch/format/sql/qt_export.sql
mit toLatin1()...
das einzige gemeinsame format das ich gefunden habe ist toBase64 dort kommt es richtig....
zwischen ä und ä ist doch eine welt an unterschied oder?
ist das ein bug oder muss man mit #include <QTextCodec> arbeiten...
Code: Alles auswählen
bool file_put_contents_latin(QString fullFileName,QString xml)
{
/* xml incomming utf8 from xml or sqlite utf8 */
xml.prepend("macè"); /* latin = macé */
QByteArray base = xml.toLatin1();
/*QByteArray eutext = */
QFile f( fullFileName );
if ( f.open( QFile::WriteOnly | QFile::Text ) )
{
QTextStream sw( &f );
sw.setCodec("ISO 8859-1");
sw << base.data();
f.close();
return true;
}
return false;
}