ios - iOS 中的单行 XML 解析器

标签 ios xml

我有一个如下所示的 XML:

<boolean xmlns="http://schemas.microsoft.com/2003/10/Serialization/">true</boolean>

我正在尝试读取 bool 值是真还是假,但我似乎找不到答案。也许我忽略了一些非常简单的事情。

这是我的 iOS 代码:

- (void) startParsing:(NSURL *) dataReceived{
    NSLog(@"StartPasing started");
    NSXMLParser *responseParser = [[NSXMLParser alloc]
                                  initWithContentsOfURL:dataReceived];
    responseParser.delegate = self;

    [responseParser parse];
    [responseParser release];
    [dataReceived release];
}

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName
   namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName
   attributes:(NSDictionary *)attributeDict {

   NSLog(@"Parser started");    

   if ([elementName isEqualToString:@"boolean"]) {
      NSLog(@"Found boolean");

      //I'M NOT SURE HOW TO READ THE VALUE INSIDE MY ELEMENT. 
   }
}

我的代码发现元素 bool 值很好,但随后我无法从该元素获取数据。我很确定这是一个简单的问题,我非常感谢一些帮助。谢谢

最佳答案

假设您正在使用 NSXMLParser 并实现 NSXMLParserDelegate,则需要实现方法 -parser:foundCharacters: ,以便它在可变字符串或其他适当的存储区域中累积字符。然后,当调用 -parser:didEndElement: 方法时,您可以查看累积的字符串并根据需要解释它。在这种情况下,您可能只需将其与@“true”进行比较。

关于ios - iOS 中的单行 XML 解析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8557597/

相关文章:

ios - Swift 中关联类型的协议(protocol)问题

iphone - 如何禁用和隐藏 UITextField

java - 如何使用jaxb获取anyType值?

xml - 使用 Powershell 在具有命名空间的 XML 中选择具有 Xpath 的属性

php - XPath 按值获取节点

ios - 保持应用程序 Logo 中的公司名称与 ios 中的应用程序名称不同

ios - 从 SQLite 数据库加载 UITableView 中的可见单元格

ios - 从未调用过通过 loadNibNamed() 从 xib 加载按钮

c++ - QT 如何获取 XML 文件的最后一个节点?

python - 在 Python 中从 XML 创建字典列表