double komma statt punkt

Alles rund um die Programmierung mit Qt
Antworten
KuhTee
Beiträge: 27
Registriert: 3. November 2012 09:17

double komma statt punkt

Beitrag von KuhTee »

Hey, kann ich irgendwie einstellen, dass bei double-Zahlen ein Komma statt der Punkt verwendet wird.

Code: Alles auswählen

double zahl=312.2344;
QString ueb;
ueb = QString("%1").arg(zahl,8,'F',3);
qDebug() << "zahl-->QString "<< zahl << "   " << ueb;

ueb = "87887,876";
zahl = ueb.toDouble();   // Hier wird das Komma erkannt
qDebug() << "QString-->double " << ueb << "   " << zahl;

Code: Alles auswählen

zahl-->QString  312.234     " 312.234" 
QString-->double  "87887,876"     87887.9 
Gruß
KuhTee
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: double komma statt punkt

Beitrag von Christian81 »

Schau mal bei QLocale vorbei
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
KuhTee
Beiträge: 27
Registriert: 3. November 2012 09:17

Re: double komma statt punkt

Beitrag von KuhTee »

Hallo Christian,
es gibt immer etwas zu entdecken.

So funzt es:

Code: Alles auswählen

QString mystrtodouble(double zahl)
{
   QLocale locale = QLocale(QLocale::German, QLocale::Germany);
   locale.setNumberOptions(QLocale::OmitGroupSeparator); // ausschalten
   return locale.toString(zahl,'f',3); // mit 3 Nachkommastellen
}
Gruß KuhTee
Antworten