how to decode UTF8 string in iphone

2019-02-18 19:26发布

I want to decode an UT8 encoded string.

The input string is "øæ-test-2.txt"

and after decoding it should become "øæ-test-2.txt"

I found many API to encode the NSString or NSData to UT8 (NSUTF8StringEncoding) but was not able to find the way to decode it.

What I have tried until now:-

NSString *str = [[NSString alloc] initWithUTF8String:[strToDecode cStringUsingEncoding:NSUTF8StringEncoding]];

AND

[strToDecode stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]

AND

[NSString stringWithUTF8String:[strToDecode cStringUsingEncoding:[NSString defaultCStringEncoding]]]

I have tried the same input string and I get the proper output in third party decoder.

But was not able to get success

Any hint in right direction would be highly appreciated.

2条回答
叼着烟拽天下
2楼-- · 2019-02-18 19:48

I use this one.

NSString *encoded_string = @"ü";
const char *ch = [encoded_string cStringUsingEncoding:NSISOLatin1StringEncoding];
NSString *decode_string = [[NSString alloc]initWithCString:ch encoding:NSUTF8StringEncoding];
NSLog(@"%@",decode_String)
查看更多
来,给爷笑一个
3楼-- · 2019-02-18 19:57
[NSString stringWithUTF8String:]
查看更多
登录 后发表回答