NSXMLDocument - 修改节点/属性

发布于 2024-10-27 16:57:45 字数 404 浏览 2 评论 0原文

有没有一种简单的方法来更新 NSXMLDocument 中的节点?我来自 c# 背景,您可以执行简单的 XmlDocument.SelectSingleNode("XPATH") 来选择节点,并使用 XmlNode.InnerText = "abc" 来设置值节点的。

我似乎找不到任何方法可以让我在 Apple NSXMLDocument 文档?

谢谢,
泰贾

Is there a simple way to update nodes in an NSXMLDocument? I come from a c# background and you can do a simple XmlDocument.SelectSingleNode("XPATH") to select a node and XmlNode.InnerText = "abc" to set the value of the node.

I can't seem to find any methods that let me do this in the Apple NSXMLDocument documentation?

Thanks,
Teja

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

意犹 2024-11-03 16:57:45

NSXMLDocumentNSXMLNode 具有方法 nodesForXPath:error: 这似乎会给你一个包含你所在节点的数组 后。沿着这些思路:

NSError err;
NSArray * nodes = [myXMLDoc nodesForXPath:theXPath error:&err];
if( !nodes ){ 
    // handle error
}
[[nodes objectAtIndex:0] setStringValue:@"abc"];

也许您想在结果节点上调用除 setStringValue: 之外的另一种方法。

(如果带有 NSError 的事情让你说“WTF?”,请给出 错误处理指南快速浏览。)

NSXMLDocument is a subclass of NSXMLNode which has a method nodesForXPath:error: which will, it seems, give you an array containing the nodes you're after. Something along these lines:

NSError err;
NSArray * nodes = [myXMLDoc nodesForXPath:theXPath error:&err];
if( !nodes ){ 
    // handle error
}
[[nodes objectAtIndex:0] setStringValue:@"abc"];

There may be another method than setStringValue: that you want to call on the resulting node, perhaps.

(If the thing with the NSError made you say "WTF?", give the Error Handling Guide a quick glance.)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文