将我的大脑震撼了几个小时,试图弄清楚这个。 TBXML必须设置rootXMLElement
才能开始遍历和解析数据。
无论我做什么,当我NSLog
时,它都是空的。
以下是XML的示例:
<?xml version= "1.0" encoding="UTF8"?>
<patients>
<patient>
<patientNumber>1234</patientNumber>
<nameFirst>Jason</nameFirst>
<!--more properties of a patient-->
</patient>
<patient>
<patientNumber>5542</patientNumber>
<nameFirst>Gary</nameFirst>
<!--more properties of a patient-->
</patient>
</patients>
到目前为止我使用的代码:
NSURL *xmlURL = [NSURL URLWithString:destPath];
TBXML *tbxml = [TBXML tbxmlWithURL:xmlURL];
NSLog将tbxml.rootXMLElement
显示为null。
注意的其他细节:
iconv
将其从ASCII转换为UTF-8。也没用。 非常感谢任何建议。
答案 0 :(得分:2)
它看起来像是一个本地XML,基于你正在预处理它的事实。当您将本地文件路径作为URL处理时,需要使用fileURLWithPath:
才能使其正常工作。所以你需要这样做,
NSURL *xmlURL = [NSURL fileURLWithPath:destPath];
TBXML *tbxml = [TBXML tbxmlWithURL:xmlURL];