1.导入头文件
#import "WRBModelTool.h"
2.获取节点
例:获取<promotion>节点数组
GDataXMLDocument *doc = [[GDataXMLDocumentalloc]initWithData:dataoptions:0error:nil];
NSArray *array = [doc nodesForXPath:@"//promotion"error:nil];
3.遍历数组,调用类方法,传入element和model类名,打印出所有属性,拷贝到model中即可
for (GDataXMLElement *ein array) {
[WRBModelTool createModelWithElement:e modelName:@"promotionModel"];
}
打印结果:
.m文件方法实现:
#import "WRBModelTool.h"
@implementation WRBModelTool
/** XML解析 */
+(void)createModelWithElement:(GDataXMLElement *)element modelName:(NSString *)modelName
{
printf("\n@interface %s :NSObject\n",modelName.UTF8String);
for (GDataXMLElement *subElementin element.children) {
printf("@property (nonatomic, copy) NSString *%s;\n",subElement.name.UTF8String);
}
printf("@end\n");
for (GDataXMLElement *subElementin element.children) {
printf("model.%s = [[[e elementsForName:@\"%s\"] firstObject] stringValue];\n",subElement.name.UTF8String,subElement.name.UTF8String);
}
}
@end
这篇博客介绍了如何在iOS应用中利用GDataXMLDocument进行XML解析,并快速创建数据模型。首先导入WRBModelTool头文件,然后通过nodesForXPath获取XML中的特定节点,接着遍历节点数组,调用WRBModelTool的类方法创建模型。该方法会打印出模型的属性声明及赋值代码,方便开发者拷贝到实际的.m文件中实现。
1346

被折叠的 条评论
为什么被折叠?



