ped*_*ios 5 objective-c nsxmlparser nsxmlparsererrordomain ios
下面的代码是打印以下消息: Error Domain=NSXMLParserErrorDomain Code=111 "The operation couldn’t be completed. (NSXMLParserErrorDomain error 111.)
mainUrl = [NSURL URLWithString:@"http://www.carris.pt/pt/carreiras"];
NSString *urlContents = [NSString stringWithContentsOfURL:mainUrl encoding:NSISOLatin1StringEncoding error:nil];
NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:[urlContents dataUsingEncoding:NSISOLatin1StringEncoding]];
[xmlParser parse];
NSLog(@"%@", [xmlParser parserError]);
Run Code Online (Sandbox Code Playgroud)
有人有线索吗?正如您在代码中看到的那样,html采用ISO-8859-1编码.
更新:我将网址提交到html验证器网站:http://validator.w3.org/,它发现了30多个错误.我认为这与错误有关.但我可以用HPPLE解析html.
似乎还没有人偶然发现正确答案,所以就在这里。
在NSXMLParserError 文档中,它说:
以下错误代码由 NSXMLParser 定义。对于此处未列出的错误代码,请参见 <libxml/xmlerror.h> 头文件。
此列表中未提及数字 111,因此我们转到/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/libxml2/libxml/xmlerror.h并找到该值:
XML_ERR_USER_STOP, /* 111 */
Run Code Online (Sandbox Code Playgroud)
libxml2中没有很多文档XML_ERR_USER_STOP,但从阅读变更集来看,当解析器看到意外的 EOF 时,它看起来像是一个快速失败。
| 归档时间: |
|
| 查看次数: |
8084 次 |
| 最近记录: |