2009-06-23 38 views
3

我試圖將一個單精度浮點數轉換爲四個字節,使其(符號/指數/尾數)的ascii表示。 我當前的代碼是:如何留下浮動的字符串表示形式?

Integer.toString(Float.floatToRawIntBits(f),16); 

Float.floatToRawIntBits使得使用相同的字節的整數,然後Integer.toString創建以十六進制形式的ASCII數字(因此基數= 16指定)。我的問題是,我總是需要8個ASCII字符加上可選的' - '符號,並且Integer.toString不是用左側零填充。

任何人都可以想出一個優雅的解決方案?

謝謝。

回答

8

您可以使用String.format()

String.format("%08x", Float.floatToRawIntBits(f)) 

這將零襯墊的結果,它格式化爲十六進制數。有關格式字符串的詳細信息,請參閱here

+1

優雅和完美的功能。非常感謝!! – apalopohapa 2009-06-23 20:16:48

相關問題