4

次のコード行があります。

NSLog([NSString stringWithFormat:NSLocalizedString(@"KEY", nil),80.1]);

80.1 は、ローカライズされた文字列に挿入されるフロートです。これはうまくいきます。ただし、ローカライズされた文字列に % 記号が必要です。%% を使用してみましたが、% 記号は出力されません。代わりに、スペース、数字 5302 が出力され、%% 文字の前にある文字列の一部も削除されます。

NSLocalizedString によって返される文字列に % 記号を追加するにはどうすればよいですか?

4

2 に答える 2

3

NSLocalizedString問題は ではなく、の記号NSLogの解釈にあると思います。%フォーマット文字列を に渡し、NSLog表示したい文字列をオブジェクト パラメータとして指定すると、パーセント記号%は残ります。

NSLog(@"%@", [NSString stringWithFormat:NSLocalizedString(@"KEY", nil),80.1]);
于 2012-07-30T17:12:57.220 に答える
0

別の方法: NSLog の最初の引数はフォーマット文字列です。フォーマット文字列があるので、それを NSLog に渡す必要があります。

NSLog (NSLocalizedString (@"KEY", nil), 80.1);
于 2014-03-10T22:25:43.497 に答える