web-dev-qa-db-ja.com

nsstringからのiOS UTF8エンコーディング

"mystring%201"のように適切にエンコードされていないnsstringを受け取っています。 "mystring 1"である必要があります。UTF8として解釈される可能性のあるすべての文字をどのように置き換えることができますか?多くの投稿を読みましたが、完全なソリューションではありません。 nsstringはすでに正しくエンコードされておらず、charシーケンスのエンコード方法については尋ねていません。

11
Jaume

- (NSString *)stringByReplacingPercentEscapesUsingEncoding:(NSStringEncoding)encodingが必要です。基本的には次のように使用します。

newString = [myString stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
33
Jesse Naugher
[urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]
6
Osama Khalifa

Strings and Non-ASCII CharactersFormatting String Objects のセクション:

NSString *s = [NSString stringWithUTF8String:"Long \xe2\x80\x94   dash"];
2
A-Live
lblDate.text=[NSString stringWithCString:[[arrTripDetail valueForKey:Param_vCurrencySymbol] UTF8String] encoding:NSUTF8StringEncoding];

カスタム絵文字を文字列に変換して取得できます

例:

入力:\ U20b9

出力:₹

2
Mehul
1
Michael