1

struts 2のメッセージリソースに多くのプレースホルダーを持つテキストを直接フォーマットすることは可能ですか?

例として、 Transfer2000USDFromBobToMikeを生成する以下のキーを検討してください。

#resources.properties
filename=Transfer{0}From{1}To{2}

#resources_fa_IR.properties (consider this is correct translation in Persian!) 
filename={انتقال{0} از {1} به {2

アクションでは、次のようなものを呼び出したいです (これは有効ではありません!!):

getText("filename", amount,sourceAccount,destincationAccount);

filename最初に を取得してから Java Formatterを使用できることを知っています。

一方、メッセージを直接フォーマットする例を見つけました。ご存じのとおり、これは有効です

message properties
format.money = {0,number,\u00A4##0.00}

jsp
<s:text name="%{getText('format.money',{amount})}" />

上記のソリューション (ショートカット) を使用してフォーマットできますか?filename

4

1 に答える 1

2

getTextメソッドは次のようにオーバーロードされているため、パラメーターを配列またはリストとして渡す必要があります。

getText(String key, String[] args)

getText(String aTextName, List<?> args)

例えば:

getText("filename", new String[] { amount, sourceAccount, destincationAccount });
于 2013-10-13T13:52:59.807 に答える