XML使用额外的空格进行分析

时间:2009-12-04 20:00:13

标签: xml cocoa nsxmlparser

我有一个如下所示的XML文件:

<?xml version="1.0"?>
<categories>
   <category id="1">
      <category_name>Banks</category_name>
   </category>
   <category id="4">
      <category_name>Restaurants</category_name>
   </category>
</categories>

[xmlParser parse]方法返回TRUE且没有错误。但是当我打印出每个元素时,我得到以下结果:

Processing characters: 

    Restaurants

注意'餐厅'的空行和略微缩进。我的foundCharacters方法打印出上面的内容。

 - (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string {

if(!currentElementValue)
    currentElementValue = [[NSMutableString alloc] initWithString:string];
else
    [currentElementValue appendString:string];

NSLog(@"Processing characters: %@", currentElementValue);
}

这导致我的UITableViewCell中的文本缩进 - 为什么会这样?

未设置imageView属性。

由于 乔

3 个答案:

答案 0 :(得分:3)

我使用以下方法解决了这个问题

NSString *trimmedString = [string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];

有效

答案 1 :(得分:1)

我认为发生的事情是,无论findCharacters方法写入的是什么,都没有在找到新元素的开头时被清除,因此缩进标签的空格仍然悬而未决。如果你只是在找到一个元素的结尾时清除它,你会得到你所描述的结果。

答案 2 :(得分:0)

您可以使用ignoreWhiteSpace属性吗?