2017-01-31 6 views
1

目的のために私はQTextStream :: setRealNumberNotation(RealNumberNotation表記)を使用する必要があります。私はいわゆる文書を参照してください。ですが、初心者のための例はありません! (It's here)例えばvoid QTextStream :: setRealNumberNotationの使い方

:ここ

QString ss; 
QTextStream (&ss); 
// here how to use it 

答えて

1

setRealNumberNotationが何をするかの一例であり、あなたは、これは以下のプリントアウト

QString mystring; 
QTextStream bla(&mystring); 
bla.setRealNumberNotation(QTextStream::ScientificNotation); 
bla << 0.000123; 
qDebug() << mystring; 
bla.setRealNumberNotation(QTextStream::FixedNotation); 
mystring.clear(); 
bla << 0.000123; 
qDebug() << mystring; 

それを使用する方法:

"1.230000e-04"

「0.000123」

さらに詳しくsetRealNumberNotationのオプションについての詳細。 Qtのドキュメントは3 Options

  • 指数表記#科学的表記
  • FixedNotation番号固定小数点表記
  • SmartNotation#科学的または固定小数点表記

SmartNotationは次のように最も理にかなっているものを使用していますを示していますprintf()%g変換指定子。 printfがどのような感覚を最もよく読み取るかを決める方法を知りたい場合printf documentation

+0

ありがとうございました。出来た。 :)(+1 + answer_up_vote):D – Franky

+0

ありがとうございます。これらを見てください: 'QString s; QTextStreamのSS(&s); ss.setRealNumberNotation(QTextStream :: SmartNotation); SS << 1000000; result_box - >のsetText(S);ここで ' 結果である:** 1000000 ** しかし、これでは1: 'QStringのS; ダブルD = 1000000; QTextStreamのSS(&s); ss.setRealNumberNotation(QTextStream :: SmartNotation); SS << D; result_box - >のsetText(単数または複数);' 結果は:** 1e + 06 ** !!! なぜですか?どのように解決してください? – Franky

+0

あなたの答えをありがとう。 – Franky

関連する問題