QString
usingtoFloat()
メソッドからfloat数値をフェッチしようとしましたが、フェッチする0
すべての数値を取得します。数値の形式が間違っていて、システムがそれを認識しないと思いますが、これらの種類の数値に正しい形式を設定するにはどうすればよい119,68648
ですか?
8121 次
2 に答える
7
http://qt-project.org/doc/qt-4.8/qlocale.html#toDoubleをご覧ください
ドキュメントのサンプルコードは次のとおりです。
bool ok;
double d;
QLocale german(QLocale::German);
d = german.toDouble( "1234,56", &ok ); // ok == true, d == 1234.56
d = german.toDouble( "1.234,56", &ok ); // ok == true, d == 1234.56
d = german.toDouble( "1234.56", &ok ); // ok == false
d = german.toDouble( "1.234", &ok ); // ok == true, d == 1234.0
于 2012-04-08T19:56:49.643 に答える
1
アプリケーションの小数点記号がコンマであるロケールを設定できます。
または、変換を行う前にコンマをドットに置き換えて、両方の数値形式を受け入れることができます。
float value = yourString.replace(",", ".").toFloat();
于 2012-04-08T19:49:48.243 に答える