iOS XML解析快速创建model

这篇博客介绍了如何在iOS应用中利用GDataXMLDocument进行XML解析,并快速创建数据模型。首先导入WRBModelTool头文件,然后通过nodesForXPath获取XML中的特定节点,接着遍历节点数组,调用WRBModelTool的类方法创建模型。该方法会打印出模型的属性声明及赋值代码,方便开发者拷贝到实际的.m文件中实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值