iOS版本系统自带的XML类只能进行解析,无法生成XML。开源库GDataXML-HTML不仅支持XML解析,还支持生成XML。
1. 添加GDataXML-HTML到项目中。
笔者使用的项目都使用Cocoapods托管,不熟悉Cocoapods可以参考《Cocoapods的安装和使用》
在Podfile文件中添加
pod 'GDataXML-HTML', '~> 1.1.0'
执行以下命令进行添加库到项目中
pod update
2. 为项目添加libxml头文件位置
在项目配置中,为“Header Search Paths”添加:
${SDK_ROOT}/usr/include/libxml2
3. 在项目中使用GDataXML-HTML
// 创建一个标签元素
GDataXMLElement *element = [GDataXMLNode elementWithName:@"user" stringValue:@"will"];
// 创建一个属性
GDataXMLElement *attribute = [GDataXMLNode attributeWithName:@"a" stringValue:@"b"];
// 创建一个根标签
GDataXMLElement *rootElement = [GDataXMLNode elementWithName:@"root"];
// 把标签与属性添加到根标签中
[rootElement addChild:element];
[rootElement addAttribute:attribute];
// 生成xml文件内容
GDataXMLDocument *xmlDoc = [[GDataXMLDocument alloc] initWithRootElement:rootElement];
NSData *data = [xmlDoc XMLData];
NSString *xmlString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"%@", xmlString);
NSlog输出的内容为:
will