文字列の数字の後にパーセント記号を付けたいです。このようなもの:75%。
どうすればこれを行うことができますか?私は試した:
[NSString stringWithFormat:@"%d\%", someDigit];
しかし、それは私にはうまくいきませんでした。
文字列の数字の後にパーセント記号を付けたいです。このようなもの:75%。
どうすればこれを行うことができますか?私は試した:
[NSString stringWithFormat:@"%d\%", someDigit];
しかし、それは私にはうまくいきませんでした。
場合によってはそれが役立つ場合は、Unicode 文字を使用することができます。
NSLog(@"Test percentage \uFF05");
受け入れられた回答は、UILocalNotification では機能しません。何らかの理由で、%%%%
(4 パーセント記号) または Unicode 文字 ' \uFF05
' はこれに対してのみ機能します。
要約すると、文字列をフォーマットするときに%%
. ただし、文字列が UILocalNotification の一部である場合は、%%%%
またはを使用します\uFF05
。
%%
が続く場合、%@
これNSString
はいくつかの奇妙なコードに行きますこれを試してみると、これは私にとってはうまくいきました
NSString *str = [NSString stringWithFormat:@"%@%@%@", @"%%",
[textfield text], @"%%"];
iOS 9.2.1、Xcode 7.2.1、ARC 対応
次のように、追加する文字列に他の書式指定子を使用せずに、いつでも「%」を単独で追加できます...
int test = 10;
NSString *stringTest = [NSString stringWithFormat:@"%d", test];
stringTest = [stringTest stringByAppendingString:@"%"];
NSLog(@"%@", stringTest);
iOS7.0以降の場合
競合を引き起こす可能性のある他の文字への回答を拡張するには、次を使用することを選択できます。
- (NSString *)stringByAddingPercentEncodingWithAllowedCharacters:(NSCharacterSet *)allowedCharacters
順を追って書くと次のようになります。
int test = 10;
NSString *stringTest = [NSString stringWithFormat:@"%d", test];
stringTest = [[stringTest stringByAppendingString:@"%"]
stringByAddingPercentEncodingWithAllowedCharacters:
[NSCharacterSet alphanumericCharacterSet]];
stringTest = [stringTest stringByRemovingPercentEncoding];
NSLog(@"percent value of test: %@", stringTest);
または省略形:
NSLog(@"percent value of test: %@", [[[[NSString stringWithFormat:@"%d", test]
stringByAppendingString:@"%"] stringByAddingPercentEncodingWithAllowedCharacters:
[NSCharacterSet alphanumericCharacterSet]] stringByRemovingPercentEncoding]);
すべての元の貢献者に感謝します。お役に立てれば。乾杯!