Chcę mieć znak procentu w moim ciągu po cyfrze. Coś w tym stylu: 75%.
Jak mogę to zrobić? Próbowałem:
[NSString stringWithFormat:@"%d\%", someDigit];
Ale to nie działało dla mnie.
objective-c
nsstring
string-literals
Ilya Suzdalnitski
źródło
źródło
NSLog
traktuje swój pierwszy argument jako ciąg formatu, ale ciąg został już sformatowany przy użyciustringWithFormat:
. Po prostu powiedzNSLog(@"%@%%", self.Ptextfield.text)
.Kodem ucieczki dla znaku procentu jest „%%”, więc twój kod wyglądałby tak
Ponadto wszystkie inne specyfikatory formatu można znaleźć w artykułach o ciągach koncepcyjnych
źródło
Jeśli to pomaga w niektórych przypadkach, można użyć znaku Unicode:
źródło
\uFF05
działa na mnie, gdy jest częściąNSString
INUILocalNotification
, nie%%
. Dzięki!Akceptowana odpowiedź nie działa dla UILocalNotification. Z jakiegoś powodu
%%%%
(znaki 4 procent) lub znak Unicode ”\uFF05
działają tylko w tym celu.Podsumowując, podczas formatowania łańcucha możesz użyć
%%
. Jeśli jednak łańcuch jest częścią UILocalNotification, użyj%%%%
lub\uFF05
.źródło
wygląda na to, że jeśli
%%
nastąpi po nim%@
,NSString
przejdę do niektórych dziwnych kodów, spróbuj tego i to zadziałało dla mnieźródło
Poniższy kod.
wyświetli: % Bhupi%
źródło
iOS 9.2.1, Xcode 7.2.1, obsługa ARC
Zawsze możesz dołączyć „%” samodzielnie, bez żadnych innych specyfikatorów formatu w dołączanym ciągu, na przykład…
Dla iOS 7.0 +
Aby rozszerzyć odpowiedź na inne znaki, które mogą powodować konflikt, możesz użyć:
- (NSString *)stringByAddingPercentEncodingWithAllowedCharacters:(NSCharacterSet *)allowedCharacters
Zapisany krok po kroku wygląda następująco:
Lub krótka ręka:
Dzięki wszystkim oryginalnym współpracownikom. Mam nadzieję że to pomoże. Twoje zdrowie!
źródło