2013-04-17 45 views
2

用戶可以在GUI中指定文件輸出格式。特別是他可以定義一個數字格式。第一個想法是讓他指定可與DecimalFormat的使用的格式,但是DecimalFormat的對我的用例,至少有兩個主要缺點:格式化沒有語言環境的數字

  • 它使用用戶的語言環境,所以## ##皈依。 '。'到','在德國。
  • 逗號前和逗號後沒有區別,所以你不能格式化12.50到1250.在我的用例中也是必需的。

StringFormat也無法做到這一點。所以我的問題是,如果你知道已經處理這個問題的任何庫,或者我必須自己編寫一個簡單的格式化程序。

+0

DecimalFormat的將用戶的語言環境,如果你不使用[的DecimalFormatSymbols]設置(http://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormatSymbols.html )。 –

+0

看看這個問題的答案:http://stackoverflow.com/questions/12711493/custom-formatted-number-with-period-and-comma –

回答

0

它使用用戶

不是這樣的語言環境。從Javadoc

「要獲得一個NumberFormat的特定區域,包括默認的語言環境,可調用NumberFormat的工廠方法,如的getInstance(一個)一般情況下,不直接調用DecimalFormat的構造。」

1
DecimalFormatSymbols otherSymbols = new DecimalFormatSymbols(Locale.ENGLISH); 
DecimalFormat decimalFormat = new DecimalFormat("##.##"); 
decimalFormat.setDecimalFormatSymbols(otherSymbols); 
相關問題