无论如何,我可以解析以下格式的XML文件: -
<?xml version="1.0" encoding="utf-8"?>
<CountryList>
<Country CountryId="AF">Afghanistan</Country>
<Country CountryId="AX">Akrotiri</Country>
<Country CountryId="AL">Albania</Country>
...........................................
...........................................
我需要国家/地区ID和名称: - 即“AL”和“阿尔巴尼亚”,那么,是否可以解析指定的XML,并将国家/地区ID和国家/地区名称存储在数组。 任何建议都会有所帮助。
答案 0 :(得分:0)
使用NSDictionary(键值)保存值。您可以使用此库来获取和保存值:
Parse XML 您可以找到在所提到的页面上提取所需数据的所有说明。
答案 1 :(得分:0)
在Omer Waqas Khan链接的帮助下,只需发布代码,您就可以从以下链接中找到XMLDictionary类nicklockwood/XMLDictionary
#import "XMLDictionary.h"
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"EDUCountry" ofType:@"xml"];
NSDictionary *xmlDoc = [NSDictionary dictionaryWithXMLFile:filePath];
NSLog(@"xmlDOC=%@",xmlDoc);
NSArray *arr=[xmlDoc valueForKey:@"Country"];
NSLog(@"Country Name and code=%@",[arr objectAtIndex:4]);
答案 2 :(得分:0)
您可以使用NSXmlParser
使用以下方法:
didStartElement
foundCharacters
您可以在CountryId
attributeDict
Swift code:
didStartElement
方法中的:
currentElement = elementName // currentElement is global variable which store the current element name
if elementName == "Country"
{
let id = attributeDict["CountryId"] as? NSString // attributeDict is parameter variable in didStartElement method
// here you can store id in array
}
如果任何标记包含值,则它将调用
foundCharacters
方法
在foundCharacters方法中编写以下代码,如下所示:
if currentElement == "Country"
{
// store country name from here to array there is paramenter name `string` in `foundCharacters` method
}