如何獲取AttributeDict的解析器函數來獲取列(名稱,短期和日期)? (代碼如下)我嘗試了一些,但它不工作,也沒有從谷歌找到任何幫助。XML Parse快速訪問attributeDict
這裏的xml文件:
<?xml version="1.0" encoding="windows-1257"?>
<timetable ascttversion="2015.5.5" importtype="database" options="daynumbering1,idprefix:Oman" displayname="Oman XML" displaycountries="om" displayinmenu="0">
<days options="canadd,canremove,canupdate,silent" columns="name,short,day">
<day name="Esmasp‰ev" short="Es" day="1"/>
<day name="Teisip‰ev" short="Te" day="2"/>
<day name="Kolmap‰ev" short="Ko" day="3"/>
<day name="Neljap‰ev" short="Ne" day="4"/>
<day name="Reede" short="Re" day="5"/>
</days>
</timetable>
下面是函數:
func parser(parser: NSXMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [NSObject : AnyObject]) {
elementName
print("\(elementName)")
// if attributeDict == ["Name" : "Esmaspäev"] {
// print("\(attributeDict)")
// }
if elementName == "day"
{
if elementName == "day"{
passName=true;
}
passData=true;
}
}
我個人不喜歡的NSXMLParser的API,它也有壞的表現,而不是使用方便。試試這個https://github.com/cezheng/Fuzi – cezheng
在創建一個XMLDocument實例後,你可以使用document.root.firstChild(tag:「days」)來獲取元素,然後daysElement.children爲你提供一個數組元素,你可以像使用下標一樣訪問屬性,如dayElement [「name」],dayElement [「short」],dayElement [「day」] –
cezheng
carthage只是導入庫的3種方法之一。您也可以使用cocoapods或手動導入 – cezheng