复杂XML的解析及组装
来源:互联网 发布:二次元站源码 编辑:程序博客网 时间:2024/04/27 14:45
在实际的项目中,IPhone应用程序会存在很多与服务器之间的数据交互的地方,XML是首选方案。
此包可以解决XML文件的解析、对象转化为XML字符串的问题。
1 通过调用解析类,可以将XML的DATA数据转换为XmlNode对象,XmlNode以树形结构进行XML的数据封装,使用的时候按照树形结构进行数据的获取。
XmlNode结构如下:
01 @ interface XmlNode : NSObject {
02
03 }
04 @property(nonatomic,retain)NSMutableDictionary *attributes;//属性
05 @property(nonatomic,retain)NSMutableArray *childs;//下级子节点
06 @property(nonatomic,retain)NSString *name;//节点名称
07 @property(nonatomic,retain)NSString *value;//节点值
08 @property BOOL haveChilds;//是否有子节点
09 @property BOOL haveAttribute;//是否有属性
10 @property(nonatomic,retain)NSMutableString *xmlString;
11 -(void)addAttribute:(NSDictionary *)att;
12 -(void)addChild:(XmlNode *)node;
13 -(NSString *)getXmlString;//将此对象装换为XML字符串
14 -(NSString *)getNodeValue:(NSString *)nodeName;//在此节点中根据子节点名称获得子节点值
15 -(NSString *)getAttributeValue:(NSString *)attName;//获得此节点的属性值
16 @end
2 而解析器只需要调用相应的方法,传入相应的参数即可。 -(XmlNode *)getObject:(NSString *)elName xmlData:(NSData *)xmlData;//从data中获取对象,并返回封装对象XmlNode 。
-(NSMutableArray *)getList:(NSString *)elName xmlData:(NSData *)xmlData;//从DATA中获得对象集合,集合中也是XmlNode
–ps–
花了点时间重构了之前的xml与对象的转换代码,采用了新的逻辑算法。代码更加精简,并可支持包含节点的属性转换了。
之前有人说看不懂是做什么,所以写了个小UI来进行体现。
xml fun 是小程序,如果发现问题或者有更好的建议请留言,谢谢。
- 复杂XML的解析及组装
- 复杂XML的解析及组装
- 复杂XML的解析及组装
- XML组装解析的困扰小问题
- dom4j组装xml 以及解析xml
- jdom 组装xml以及解析xml
- dom4j组装xml 以及解析xml
- 使用XStream解析复杂的XML文件
- 使用XStream解析复杂的XML文件
- 使用XStream解析复杂的XML文件
- JSON和XML的复杂解析
- 使用XStream解析复杂的XML文件
- 解析xml实例,包含复杂xml的循环解析
- 使用DOM组装和解析xml
- 使用DOM组装和解析XML
- Flex 复杂XML 解析XML
- android Pull解析复杂XML
- pull解析复杂xml文件
- iOS6 自动布局 入门–Auto Layout
- 类之间的关系
- iOS小技巧:用小图片重复显示来设置大背景图片
- iOS 6 IAP入门
- Objective-C解析HTML
- 复杂XML的解析及组装
- 使用CATiledLayer优化PDF展示
- iPhone开发中发送e-mail的3种方式
- 在 iOS 中使用 OpenSSL 库
- [ASP.NET MVC 小牛之路]04 - 依赖注入(DI)和Ninject
- warning: Signal <> missing in the sensitivity list is added for synthesis purposes
- ios获得通讯录中联系人的所有属性
- OpenSSL在苹果手机推送中的使用
- 黑马程序员_java注解