как декодировать строку UTF8 в iphone - PullRequest
3 голосов
/ 12 января 2011

Я хочу декодировать строку в кодировке UT8.

Строка ввода: " øæ-test-2.txt "

и после декодирования должно стать " oÆ тест-2.txt "

Я нашел много API для кодирования NSString или NSData в UT8 (NSUTF8StringEncoding), но не смог найти способ его декодировать.

Что я пробовал до сих пор: -

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

И

[strToDecode stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]

И

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

Я пробовал ту же строку ввода и получаю правильный вывод в стороннем декодере .

Но не смог добиться успеха

Любой намек в правильном направлении будет высоко оценен.

Ответы [ 2 ]

7 голосов
/ 07 сентября 2012

Я использую это один.

NSString *encoded_string = @"ü";
const char *ch = [encoded_string cStringUsingEncoding:NSISOLatin1StringEncoding];
NSString *decode_string = [[NSString alloc]initWithCString:ch encoding:NSUTF8StringEncoding];
NSLog(@"%@",decode_String)
6 голосов
/ 12 января 2011
[NSString stringWithUTF8String:]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...