Obj-C,在 iTunes 搜索查询字符串中编码简体中文?
Obj-C, encode Simplified Chinese in an iTunes search querystring?
我很难使用简体中文的 iTunes 搜索 API。我尝试了几个字符变体(由 google 翻译提供)以及 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
}
我尝试在浏览器中输入 URL 并得到了结果。我想你需要对汉字进行百分号编码?
https://itunes.apple.com/search?term=%E4%B9%98%E6%B3%95&country=cn&entity=software
您可以使用 iOS 函数 stringByAddingPercentEncodingWithAllowedCharacters
。
我很难使用简体中文的 iTunes 搜索 API。我尝试了几个字符变体(由 google 翻译提供)以及 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
}
我尝试在浏览器中输入 URL 并得到了结果。我想你需要对汉字进行百分号编码?
https://itunes.apple.com/search?term=%E4%B9%98%E6%B3%95&country=cn&entity=software
您可以使用 iOS 函数 stringByAddingPercentEncodingWithAllowedCharacters
。