ich habe folgende eingabe, sowie ausgabe:
Code: Alles auswählen
// Eingabe deklarieren und initialisieren, zgl. Umwandlung in double (+ Kommaumwandlung)
double eingabe = input_edit->text().replace(",", ".").toDouble();
// Ausgabe formatieren
QString str;
str.sprintf("%.2f", eur_wert);
str.replace(".",",");
output_edit->setText( str );
hat jemand diesbezüglich einen vorschlag für mich?
in der stdio.h gibt es eine funktion namens sprintf, welche u.a. posix-locale nutzt, die die formatierungen entsprechend setzen.
man sprintf
Code: Alles auswählen
...
Für einige numerische Umwandlungen wird ein Radixzeichen ("Dezi-
malkomma") oder ein Tausender-Gruppierungszeichen verwendet. Des
tatsächlich benutzte Zeichen hängt vom LC_NUMERIC-Teil der Locale ab.
Die POSIX-Locale benutzt `.' als Radixzeichen und hat kein Grup-
pierungszeichen. Damit resultiert
printf("%'.2f", 1234567.89);
in `1234567.89' in der POSIX-Locale, in `1234567,89' in der Locale
nl_NL und in `1.234.567,89' in der Locale da_DK.
cu...
daniel