请选择 进入手机版 | 继续访问电脑版
  • 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

iphone - 如何在 iphone 上使用 xmlparsing 解析 XML 文件?

[复制链接]
菜鸟教程小白 发表于 2022-12-13 17:09:39 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

如何在 iphone 上使用 xmlparsing 访问以下 XML 文件?

<?xml version="1.0" encoding="iso-8859-1"?>
<chapter>
 <TITLE>Title &plainEntity;</TITLE>
 <para>
  <informaltable>
   <tgroup cols="3">
    <tbody>
     <row><entry>a1</entry><entry morerows="1">b1</entry><entry>c1</entry></row>
     <row><entry>a2<<?xml version="1.0" encoding="iso-8859-1"?>
<ADDRESS>
        <CONTACT>
        <NAME FIRST="Fred" LAST="Bloggs" NICK="Bloggsie" TITLE="Mr" />
        <STREET HOME="5 Any Street" WORK="Floor 24, BigShot Tower" />
        <CITY HOME="Little Town" WORK="Anycity" />
        <COUNTY HOME="Anyshire" WORK="Anyshire" />
        <OSTAL HOME="as plain text" WORK="text" />
        <COUNTRY HOME="UK" WORK="UK" />
        <HONE HOME="as text" WORK="text" />
        <FAX HOME="none" WORK="555" />
        <MOBILE HOME="444" WORK="333" />
        <WEB HOME="www.codehelp.co.uk" WORK="" />
        <COMPANY>Full name of company here</COMPANY>
        <GENDER>male</GENDER>
        <BDAY>Add tags for year, month and day to make this more useful</BDAY>
        <ANNI>some date long forgotten :-)</ANNI>
        <SPOUSE>angry</SPOUSE>
        <CHILDREN>Make sure this tag is one of the ones allowed to repeat in the DTD</CHILDREN>
        <COMMENT>comments here</COMMENT>
        <EMAILONE>Either use fixed tags like this, or change to a repeating tag</EMAILONE>
        <EMAILTWO>second email line</EMAILTWO>
        <EMAILTHREE>third</EMAILTHREE>
        <EMAILFOUR>fourth</EMAILFOUR>
        </CONTACT>
</ADDRESS>/entry><entry>c2</entry></row>
     <row><entry>a3</entry><entry>b3</entry><entry>c3</entry></row>
    </tbody>
   </tgroup>
  </informaltable>
 </para>
 &systemEntity;
 <section id="about">
  <title>About this Document</title>
  <para>
   <!-- this is a comment -->

  </para>
 </section>
</chapter>



Best Answer-推荐答案


SDK 提供了两种解析 XML 的方法:libxml2 和 NSXMLParser。 libxml2 是最快的。要在您的项目中使用它,请转到您的 iPhone App 项目的build设置并设置以下内容:

  • 其他链接器标志 = -lxml2
  • header 搜索路径(SDKROOT)/usr/include/libxml2

然后从这个页面下载 XPathQuery.m 和 XPathQuery.h:Using libxml2 for XML parsing and XPath queries in Cocoa ,其中还提供了有关如何使用它的教程。 XPathQuery 类是解析 XML 的一种简化方法。我推荐它,除非您想自己编写相同的代码,但事实并非如此。

有了这个,就去做

NSString *string = nil; // put your html document here

NSData *htmlData = [string dataUsingEncoding:NSUTF8StringEncoding];
NSString *xpath = @"//row"; // any standard XPath expression
NSArray *nodesArray = PerformHTMLXPathQuery(htmlData, xpath);
NSDictionary *dict;
if (0<[nodesArray count]) {
    dict = [nodesArray objectAtIndex:0];
}

此时,文档中的元素应该在 dict 字典中。

关于iphone - 如何在 iphone 上使用 xmlparsing 解析 XML 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5715174/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap