解析日语中的Google Suggest API时出错



当我搜索时ア"来自谷歌的数据建议API和我目前在设备中的语言是英语。然后我在iPhone设备中得到了以下响应。

<?xml version="1.0"?>
<toplevel>
<CompleteSuggestion>
<suggestion data="&#x30A2;&#x30DE;&#x30BE;&#x30F3;"/>
<num_queries int="69300000"/>
</CompleteSuggestion>
<CompleteSuggestion>
<suggestion data="&#x30A2;&#x30E1;&#x30D6;&#x30ED;"/>
<num_queries int="66400000"/>
</CompleteSuggestion>
</toplevel>

当我搜索"ア"来自谷歌的数据建议API和我目前在设备中的语言是日语。然后我在iPhone设备中得到了以下响应。

<?xml version="1.0"?>
<toplevel>
<CompleteSuggestion>
<suggestion data="ÉAÉ}É]Éì"/>
<num_queries int="69300000"/>
</CompleteSuggestion>
<CompleteSuggestion>
<suggestion data="ÉAÉÅÉuÉç"/>
<num_queries int="66400000"/>
</CompleteSuggestion>
</toplevel>

对于英语XML解析工作正常,但对于日语响应,它在解析XML时给了我错误,并且不会显示数据。

请提出任何解决方法。

我正在使用下面的代码从Google Suggest API获取响应。

NSString *strUrl = [NSString stringWithFormat:@"http://google.com/complete/search?output=toolbar&q=ア"];
NSURL *url = [NSURL URLWithString:[strUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSString * urlData = [NSString stringWithContentsOfURL:url];
// Print the data that get from google suggest api.
NSLog(@"URL Data :: %@", urlData);

谢谢。

我解决了这个问题。在我的情况下,谷歌api会给我返回一个日语字符。所以我更改我的代码如下:

NSString *strUrl = [NSString stringWithFormat:@"http://google.com/complete/search?output=toolbar&q=ア"];
NSURL *url = [NSURL URLWithString:[strUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSError * isError;
NSString * urlData = [NSString stringWithContentsOfURL:url encoding:NSShiftJISStringEncoding error:&isError];
NSLog(@"URL Data :: %@", urlData);

谢谢。

相关内容

  • 没有找到相关文章

最新更新