OC4_XML文件解析

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>a</key>
    <array>
        <string>安吉</string>
        <string>安庆</string>
        <string>鞍山</string>
        <string>澳门</string>
    </array>
    <key>b</key>
    <array>
        <string>保定</string>
        <string>宝鸡</string>
        <string>包头</string>
        <string>北海</string>
        <string>北京</string>
        <string>蚌埠</string>
        <string>滨州</string>
    </array>
    <key>c</key>
    <array>
        <string>沧州</string>
        <string>长春</string>
        <string>常德</string>
        <string>长乐</string>
        <string>长沙</string>
        <string>常熟</string>
        <string>常州</string>
        <string>潮阳</string>
        <string>潮州</string>
        <string>承德</string>
        <string>成都</string>
        <string>郴州</string>
        <string>重庆</string>
        <string>滁州</string>
        <string>慈禧</string>
        <string>从化</string>
    </array>
    <key>d</key>
    <array>
        <string>大连</string>
        <string>丹东</string>
        <string>大庆</string>
        <string>大同</string>
        <string>德阳</string>
        <string>德州</string>
        <string>东莞</string>
        <string>东营</string>
    </array>
    <key>e</key>
    <array>
        <string>鄂尔多斯</string>
        <string>鄂州</string>
    </array>
    <key>f</key>
    <array>
        <string>奉化</string>
        <string>佛山</string>
        <string>抚顺</string>
        <string>阜阳</string>
        <string>福州</string>
    </array>
    <key>g</key>
    <array>
        <string>赣州</string>
        <string>广州</string>
        <string>桂林</string>
        <string>贵阳</string>
    </array>
    <key>h</key>
    <array>
        <string>哈尔滨</string>
        <string>海口</string>
        <string>海拉尔</string>
        <string>邯郸</string>
        <string>杭州</string>
        <string>合肥</string>
        <string>鹤岗</string>
        <string>衡阳</string>
        <string>鹤山</string>
        <string>河源</string>
        <string>花都</string>
        <string>淮安</string>
        <string>淮北</string>
        <string>淮南</string>
        <string>黄石</string>
        <string>呼和浩特</string>
        <string>惠东</string>
        <string>惠阳</string>
        <string>惠州</string>
        <string>葫芦岛</string>
        <string>湖州</string>
        <string>怀化</string>
    </array>
    <key>j</key>
    <array>
        <string>江都</string>
        <string>江门</string>
        <string>姜堰</string>
        <string>江阴</string>
        <string>焦作</string>
        <string>嘉兴</string>
        <string>揭阳</string>
        <string>吉林</string>
        <string>济南</string>
        <string>荆门</string>
        <string>荆沙</string>
        <string>金华</string>
        <string>济宁</string>
        <string>晋江</string>
        <string>晋中</string>
        <string>锦州</string>
        <string>九江</string>
    </array>
    <key>k</key>
    <array>
        <string>开封</string>
        <string>开平</string>
        <string>昆明</string>
        <string>昆山</string>
    </array>
    <key>l</key>
    <array>
        <string>莱芜</string>
        <string>莱西</string>
        <string>廊坊</string>
        <string>兰州</string>
        <string>连云港</string>
        <string>聊城</string>
        <string>列东</string>
        <string>醴陵</string>
        <string>临汾</string>
        <string>临沂</string>
        <string>丽水</string>
        <string>浏阳</string>
        <string>柳州</string>
        <string>龙岩</string>
        <string>六安</string>
        <string>陆丰</string>
        <string>漯河</string>
        <string>洛阳</string>
        <string>泸州</string>
    </array>
    <key>m</key>
    <array>
        <string>茂名</string>
        <string>梅州</string>
        <string>绵阳</string>
    </array>
    <key>n</key>
    <array>
        <string>南昌</string>
        <string>南充</string>
        <string>南京</string>
        <string>南宁</string>
        <string>南平</string>
        <string>南通</string>
        <string>南阳</string>
        <string>内江</string>
        <string>宁波</string>
    </array>
    <key>p</key>
    <array>
        <string>盘锦</string>
        <string>番禺</string>
        <string>平顶山</string>
        <string>莆田</string>
        <string>濮阳</string>
    </array>
    <key>q</key>
    <array>
        <string>启东</string>
        <string>青岛</string>
        <string>清远</string>
        <string>秦皇岛</string>
        <string>钦州</string>
        <string>琼海</string>
        <string>齐齐哈尔</string>
        <string>全国</string>
        <string>泉州</string>
        <string>衢州</string>
    </array>
    <key>r</key>
    <array>
        <string>日照</string>
    </array>
    <key>s</key>
    <array>
        <string>三河</string>
        <string>三亚</string>
        <string>上海</string>
        <string>上虞</string>
        <string>汕头</string>
        <string>汕尾</string>
        <string>韶关</string>
        <string>绍兴</string>
        <string>邵阳</string>
        <string>沈阳</string>
        <string>深圳</string>
        <string>石家庄</string>
        <string>石狮</string>
        <string>十堰</string>
        <string>寿光</string>
        <string>四会</string>
        <string>随州</string>
        <string>苏州</string>
    </array>
    <key>t</key>
    <array>
        <string>泰安</string>
        <string>台山</string>
        <string>太原</string>
        <string>泰州</string>
        <string>台州</string>
        <string>塘沽</string>
        <string>唐山</string>
        <string>天津</string>
        <string>铜陵</string>
    </array>
    <key>w</key>
    <array>
        <string>潍坊</string>
        <string>威海</string>
        <string>渭南</string>
        <string>温州</string>
        <string>武汉</string>
        <string>芜湖</string>
        <string>吴江</string>
        <string>乌鲁木齐</string>
        <string>无锡</string>
        <string>梧州</string>
    </array>
    <key>x</key>
    <array>
        <string>厦门</string>
        <string>西安</string>
        <string>襄樊</string>
        <string>香港</string>
        <string>湘潭</string>
        <string>咸宁</string>
        <string>咸阳</string>
        <string>兴宁</string>
        <string>邢台</string>
        <string>西宁</string>
        <string>新乡</string>
        <string>宣城</string>
        <string>许昌</string>
        <string>徐州</string>
    </array>
    <key>y</key>
    <array>
        <string>盐城</string>
        <string>阳江</string>
        <string>阳泉</string>
        <string>阳朔</string>
        <string>扬州</string>
        <string>烟台</string>
        <string>宜昌</string>
        <string>银川</string>
        <string>英德</string>
        <string>义务</string>
        <string>宜兴</string>
        <string>仪征</string>
        <string>永康</string>
        <string>岳阳</string>
        <string>云浮</string>
        <string>玉林</string>
        <string>玉溪</string>
        <string>余姚</string>
    </array>
    <key>z</key>
    <array>
        <string>湛江</string>
        <string>肇庆</string>
        <string>招远</string>
        <string>郑州</string>
        <string>镇江</string>
        <string>中山</string>
        <string>周口</string>
        <string>舟山</string>
        <string>珠海</string>
        <string>诸暨</string>
        <string>株洲</string>
        <string>淄博</string>
        <string>自贡</string>
    </array>
</dict>
</plist>

//
//  main.m
//  OC4_XML文件解析
//
//  Created by zhangxueming on 15/6/26.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "GDataXMLNode.h"

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSData *xmlData = [NSData dataWithContentsOfFile:@"/Users/zhangxueming/Desktop/ios1509/Day23_xml文件解析及block使用/OC4_XML文件解析/qfile.xml"];
        GDataXMLDocument *document = [[GDataXMLDocument alloc] initWithData:xmlData options:0 error:nil];
        GDataXMLElement *rootElement = [document rootElement];
        GDataXMLElement *dict = [[rootElement nodesForXPath:@"./dict" error:nil] firstObject];
        NSArray *keyElements = [dict elementsForName:@"key"]; //NSArray里面存放是element对象

        NSArray *arrayElements = [dict elementsForName:@"array"];

        NSMutableDictionary *mulDict = [NSMutableDictionary dictionary];

        NSInteger len= [keyElements count];

        for (NSInteger i=0; i<len; i++) {
            NSString *key = [[keyElements objectAtIndex:i] stringValue];
            NSArray *valueElements =[[arrayElements objectAtIndex:i] elementsForName:@"string"];
            NSMutableArray *values = [NSMutableArray array];
            for (GDataXMLElement *element in valueElements) {
                [values addObject:[element stringValue]];
            }
            [mulDict setObject:values forKey:key];
        }

        //NSLog(@"mulDict = %@", mulDict);

        char buf[100]={};
        scanf("%s", buf);
        NSString *dstString = [NSString stringWithUTF8String:buf];

        for (NSString *key in mulDict) {
            NSArray *values = [mulDict objectForKey:key];
            if ([values containsObject:dstString]) {
                NSLog(@"key = %@", key);
            }
        }
    }
    return 0;
}
时间: 2024-11-02 18:01:26

OC4_XML文件解析的相关文章

Intel HEX文件解析

近期有一个需求就是为Arduino开发板做一个基于蓝牙的无线烧录程序.眼下的Arduino程序都是通过USB线连接到电脑的主机上,实际的传输过程是基于USB协议的,这个过程还是比較麻烦的.由于每次的编译完以后都须要通过一个USB线来完毕传输烧录的工作,这个还是非常麻烦的. 原理解读 在Arduino中.利用USB来完毕传输烧录大概是这么一个过程. 每一个Arduino源程序.即sketch文件,经过一系列的编译处理以后.终于会形成一个Intel HEX格式的文件.这个HEX文件事实上就一个被封装

AndroidNative层文件解析漏洞挖掘指南

| 导语 本文以手Q的一次文件解析类漏洞挖掘为例,叙述了Android Native层文件解析类型漏洞挖掘的过程 手Q这个应用从功能来说十分的庞大,如果使用类似MFFA的框架去挖掘文件解析类漏洞,效率低,而且文件入口在哪儿.如何利用脚本进行自动化都是非常大的问题.本文在一次手Q的文件解析类漏洞挖掘的过程中,提出了一种可能的解决问题的方案,妄称指南不吝赐教. 目录: 1.问题分析 2.流程图 3.so筛选 4.测试程序编写 5.test case生成 6.测试得出crash 7.未来的工作 0x0

Atitit。Tree文件解析器的原理流程与设计实现&#160;&#160;java&#160;&#160;c#&#160;php&#160;js

Atitit.Tree文件解析器的原理流程与设计实现  java  c# php js 1. 解析原理与流程1 1.1. 判断目录  ,表示服  dirFlagChar = "└├─";1 1.2. 剑豪制表符出现的位置与文件夹级别对应表1 1.3. 主要判读流程2 2. Tree结果2 3. Code----3 4. 结果5 1. 解析原理与流程 1.1. 判断目录  ,表示服  dirFlagChar = "└├─"; 其中-类似于剑豪的制表符是表示目录的..够

基于Android2.3.5系统:Android.mk文件解析

*************************************************************************************************************************** 作者:EasyWave                                                                                                               时间:2

java class 文件解析

参考下面两个文章对一个class文件进行解析: http://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html#jvms-4.4.6 http://blog.163.com/hfut_quyouhu/blog/static/7847183520127214559314/ java的源代码如下: 1 package test.java.abs; 2 3 public class Abs { 4 5 /** 6 * @param args

emmintrin.h文件解析

 Welcome to CSU Online Judge! 1112: 机器人的指令 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 274  Solved: 97 [Submit][Status][Web Board] Description 数轴原点有一个机器人.该机器人将执行一系列指令,你的任务是预测所有指令执行完毕之后它的位置. ·LEFT:往左移动一个单位 ·RIGHT: 往右移动一个单位 ·SAME AS i: 和第i 条执行相同的

转载:AAC文件解析及解码

转自:http://blog.csdn.net/wlsfling/article/details/5876016 http://www.cnblogs.com/gaozehua/archive/2012/05/03/2479960.html OUTLINE: * AAC概述 * AAC规格简述 * AAC特点 * AAC音频文件解析 --ADIF&ADTS格式 --ADIF&ADTS头信息 --ADIF&ADTS数据信息 --AAC文件处理流程 * AAC解码流程 --技术解析 *

javap -- Java 类文件解析器

参考文档 http://blog.chinaunix.net/uid-692788-id-2681132.html http://docs.oracle.com/javase/7/docs/technotes/tools/solaris/javap.html 功能说明:Java 类文件解析器. 语法:javap [ 命令选项 ] class. . . 补充说明: javap 命令用于解析类文件.其输出取决于所用的选项.若没有使用选项,javap 将输出传递给它的类的 public 域及方法.ja

android基础知识13:AndroidManifest.xml文件解析

1.重要性 AndroidManifest.xml是Android应用程序中最重要的文件之一.它是Android程序的全局配置文件,是每个 android程序中必须的文件.它位于我们开发的应用程序的根目录下,描述了package中的全局数据,包括package中暴露的组件 (activities, services, 等等),以及他们各自的实现类,各种能被处理的数据和启动位置等重要信息. 因此,该文件提供了Android系统所需要的关于该应用程序的必要信息,即在该应用程序的任何代码运行之前系统所