Obj-C, кодировать упрощенный китайский в строке поиска iTunes?
Я изо всех сил пытаюсь использовать API поиска iTunes с упрощенным китайским языком. Я попробовал несколько вариантов символов (предоставляемых Google Translate) вместе с HTML-кодировкой символов.
Приведенный ниже код не вызывает никаких ошибок, но не дает никаких результатов, в отличие от английских слов. Я также пробовал разные китайские слова.
Однако я не уверен, как поступить.
NSString *url_string = @"";
NSString *keyword = [@"Chéngfǎ" stringByReplacingOccurrencesOfString: @" "
withString: @"%20"];
//NSString *keyword = [@"乘法" stringByReplacingOccurrencesOfString: @" "
withString: @"%20"];
url_string = [NSString stringWithFormat:
@"https://itunes.apple.com/search?term=%@&country=%@&entity=software", keyword, @"cn"];
NSError *error;
NSData *data = [NSData dataWithContentsOfURL: [NSURL URLWithString: url_string]];
NSMutableArray *json;
if (data != nil)
{
json = [NSJSONSerialization JSONObjectWithData:data options: kNilOptions error: &error];
}
NSDictionary *outer = [json valueForKey: @"results"];
for(NSDictionary *item in outer)
{
//results
}
1 ответ
Решение
Я попытался ввести URL-адрес в браузере, и я получил результаты. Я думаю, вам нужно в процентах кодировать китайские символы?
https://itunes.apple.com/search?term=%E4%B9%98%E6%B3%95&country=cn&entity=software
Вы можете использовать функцию iOS stringByAddingPercentEncodingWithAllowedCharacters
,