0

このリンクを見ましたが、何が間違っているのかわかりません。MessageFormat を使用してファイルからプロパティを取得していますが、渡された整数が 1 以上かどうかに応じてプロパティを動的にしたいと考えています。ファイル内のプロパティは次のようになります。

Prop1=Invalid password entered. You have {0,number,integer} {0,choice,1#attempt|1<attempts} remaining.

コードでは、このプロパティを読み取り、引数の配列をMessageFormat.format()渡します (すべてのプロパティで一貫性を保つために配列を渡します。この場合、存在する唯一のオブジェクトは整数値の文字列表現です)。コードのデバッグ中、この文字列が読み取られることがわかりますがMessageFormat.format()、期待どおりに文字列をフォーマットしていないようです。結果は次のようになります。

"Invalid password entered. You have {0,number,integer} {0,choice, 1#attempt|1<attempts} remaining."

誰が私が間違っているのか教えてもらえますか? 前に述べたように、整数値の文字列表現を渡していますが、上記のコードで処理できると想定していました。私の理解は間違っていますか?

4

1 に答える 1