“操作无法完成。(NSXMLParserErrorDomain错误111.)”

时间:2013-12-21 18:31:59

标签: ios nsxmlparsererrordomain

我正在尝试解析Xcode中的XML字符串。它成功地解析了字符串,但在它出错之后。

这是xml String,解析代码和错误消息。请指导我。

提前谢谢大家。

XML String。

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body><GetProductResponse xmlns="http://searchupc.com/"><GetProductResult>"productname","imageurl","producturl","price","currency","saleprice","storename"
"Nature's Way Kids Smart Omega-3 Vita Balls X 50 Caps","http://ecx.images-amazon.com/images/I/31A5BCa%2BFvL._SL160_.jpg","","22.04","USD","","N/A"
</GetProductResult></GetProductResponse></soap:Body></soap:Envelope>

代码返回“GetProductResponse”和“soap:Body”,然后它给出错误。

(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)

NSLog(@"didEndElement() Element: ");
if(([elementName isEqualToString:@"GetProductResponse"]) ||
   ([elementName isEqualToString:@"soap:Body"]) ||
   ([elementName isEqualToString:@"soap:Envelope"])){

    NSLog(@"EOF Reached: %@",elementName);
    // we reach the end of product data string.
    return;
}

这是错误消息:

  

错误域= NSXMLParserErrorDomain代码= 111“操作无法执行   完成。 (NSXMLParserErrorDomain错误111。)“

1 个答案:

答案 0 :(得分:0)

我自己解决了我的问题。可能会帮助其他人。

错误在于将XMLString分配给NSData。我将NSData变量范围设置为

data = [data subdataWithRange:NSMakeRang(0,[data length] -1)];

这是不正确的。

我删除了“-1”,现在工作正常。

data = [data subdataWithRange:NSMakeRang(0,[data length] )];` 

无论如何,谢谢大家。