修剪NSXMLParser的字符

时间:2011-02-19 14:52:45

标签: objective-c xml ascii nsxmlparser nscharacterset

foundCharacters的{​​{1}}中修剪字符的正确方法是什么?

我发现很多例子都是这样的:

NSXMLParser

当我运行上面的内容时,会修剪一个后跟非ASCII字符的空格。例如:“thisé”将成为“thisé”。

2 个答案:

答案 0 :(得分:2)

  

当我运行上面的内容时,会修剪一个后跟非ASCII字符的空格。例如:“thisé”将成为“thisé”。

也许是巧合。

参见parser:foundCharacters:

的讨论
  

解析器对象可以向委托发送几个解析器:foundCharacters:messages 来报告元素的字符。因为字符串可能只是当前元素的总字符内容的一部分,所以应该将其附加到当前字符的累积中,直到元素发生变化。

如果你修剪了this的空白(最后有一个空格,你看不见),然后从é开始,你最终会得到thisé

我从未使用过NSXMLParser,但也许你应该修剪parser:didEndElement:namespaceURI:qualifiedName:中的字符串。根据我的理解,该元素将完成。

但我只是在猜测。

答案 1 :(得分:0)

这是我过去用来修剪空白而没有任何问题。

- (NSString *)trim:(NSString *)inStr {
    return [inStr stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

}

唯一的区别是它使用的是一个略有不同的空白字符集。