2009-04-13 11 views
3

は、Formatオブジェクトからフォーマット文字列(または任意の派生クラス)のコードでは取得フォーマット文字列Javaでは

を取得する方法がありますSystem.out.println(???)を取得する。 "$ 0.00"を印刷します。

私はtoPattern()を見ました。その関数は抽象的なFormatクラスには含まれておらず、私が扱っている変数はFormatを拡張するものであれば何でも構いません。

答えて

0

いいえ、私は恐れています!あなたが扱っているサブクラスを知っていて、適切なメソッドを呼び出す必要があります:-(

0

パターンが実際にはフォーマット階層の葉にあるので、親フォーマットからこれを行う直接的な方法はありません。SimpleDateFormat 、MessageFormat、ChoiceFormat、DecimalFormat); toPatternメソッドを持っています。これは規約であると思われるので、リフレクションで得ることができます。

1

パターン(ある場合)は、 FormatFormatは、書式設定にパターンを使用するという保証はありません。

編集:あなたが何をしようとしているかわかりませんFormatインスタンスを永続化する必要がある場合は、Serializableです。

0

私はあなたがコードに持っていますが、最初の行で、この小さな変更を適用した場合、あなたはこのように見ている情報を得ることができる必要がありアクセスが何であるかわからない:

DecimalFormat f = new DecimalFormat("$0.00"); 
System.out.println(f.toPattern()); 
関連する問題