2017-01-31 50 views

回答

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(一個或多個);' 這裏的結果是:** **百萬 但是在此一: 'QString的S; 雙d = 1000000; QTextStream SS(&s); ss.setRealNumberNotation(QTextStream :: SmartNotation); SS << d; result_box - >的setText(一個或多個);' 結果是:** 1e + 06 ** !!! 爲什麼?請問如何解決? – Franky

+0

感謝您的回答。 – Franky