Seite 1 von 1

Programm ohne Lokalisation compilieren...

Verfasst: 16. Februar 2010 13:05
von MisterFQ
Moin,
ich habe da eine kleines Problem mit der Lokalisation von Qt 4.5 / Linux.

Ich habe eine Bibliothek die Messwerte aus Dateien einliest, diese läuft auch in einem C++ Projekt ohne Probleme.
In einem QT Projekt klappt dies nicht mehr so ohne weiteres, die Messwerte werden ohne Kommastellen eingelesen.
Dieses Problem liegt wie hier zu lesen ist scheinbar an dem Sprachpaket und das Kommas mit Punkten vertauscht sind (in Deutschand).

Wenn ich nun hingehe und vor dem Programmstart die locale Variablen von Linux auf C stelle läuft das Programm ohne Probleme. In Qt Selber mit Qstring kann ich dies zwar auch ändern allerdings gilt dies scheinbar nicht für die Bibliothek.

Jetzt meine Frage:
Kann ich irgendwie dem Programm beim compilieren mitgeben, dass dieser ganze quatsch mit der Lokalisation nicht berücksichtigt wird?


Grüße

Verfasst: 16. Februar 2010 16:24
von Christian81
setlocale() ist die Funktion die Du suchst.
Qt stellt die Locale autoamtisch auf die Systemlocale um - da kann man nicht viel machen. Wenn man was einliest sollte man deshalb immer darauf achten dass die korrekte Locale eingestellt ist.

Verfasst: 16. Februar 2010 16:31
von MisterFQ
Qt stellt die Locale autoamtisch auf die Systemlocale um - da kann man nicht viel machen.
Das ist ja das Problem...setlocal funktioniert in Qt, aber die Libs selber sind dann immernoch in der Sprache in die beim Aufruf des Programms eingestellt war. Das muss man doch ändern können....

Verfasst: 16. Februar 2010 16:35
von Christian81
Wie wäre es da mit QLocale ?