2017-11-02 6 views
-8

私はXSを使用しています。タイプとして小数をXSDの長さとJavaでBigdecimalの精度を保持する方法は?

value="9999999999999999.999999999999999" 

BigDecimal big = new BigDecimal("0.000000000001"); 
System.out.println(big); // Actual 1e-12 Expected 0.000000000001 

として、私はjavadocをよりBigDecimal

+2

[ 'BigDecimal.toPlainString'](https://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal。 html#toPlainString%28%29) – AxelH

+0

あなたは何をしたいですか?あなたはあなたの質問を変更しましたが、これは意味をなさないでしょう。 'BigDecimal'が必要な場合は' big'を、使用する場合は 'big.toPlainString()'を使用してください(指数なし) – AxelH

+0

値の10進数表記が必要です。私はこのBigDecimalオブジェクトをJaxB marshallerを使ってXSDに解析しています。私は出力XMLに指数関数形式を取得しています –

答えて

1

でそれをしたいので、私は、toPlainString()を使用することはできません。BigDecimal.toPlainString

公共の文字列toPlainString()

指数フィールドのないこのBigDecimalの文字列表現を返します。

BigDecimal bd = new BigDecimal("0.000000001"); 
System.out.println(bd); 
System.out.println(bd.toPlainString()); 

の出力は以下となります。

1E-9 
0.000000001 
関連する問題