zoukankan      html  css  js  c++  java
  • swift NSJSONSerialization json解析

    以下是解析、生成方法 

        func jsonParse(){

      

            /******************************************  解析json类型  **************************************/

            let jsonFile = NSBundle.mainBundle().pathForResource("JsonParseFile", ofType: "geojson")

            let jsonData = NSData.dataWithContentsOfMappedFile(jsonFile!) as NSData

            var errorRead:NSError?

            var jsonParse = NSJSONSerialization.JSONObjectWithData(jsonData, options: NSJSONReadingOptions.MutableLeaves, error: &errorRead) as NSDictionary

            if errorRead==nil {

                let itemCount = jsonParse.objectForKey("ItemCount") as NSString

                println("数据总数 : (itemCount)")

                let itemArray = jsonParse.objectForKey("Info") as NSArray

                println("当前数组 : (itemArray.count)")

                let dataArray = jsonParse.objectForKey("Info") as NSArray

                for manDic in dataArray{

                    let name = manDic.objectForKey("Name") as NSString

                    println("数据数组 : (name)")

                }

            }else{

                println("json不合法,解析失败")

            }

      

            /******************************************  转化成json类型  **************************************/

            let writeJsonArray1   = ["1","2","3"]

            let writeJsonArray2   = ["4","5","6"]

            let writeJsonDictory = ["数组1":writeJsonArray1,"数组2":writeJsonArray2]

            let jsonFormater = NSJSONSerialization.isValidJSONObject(writeJsonDictory)

            if jsonFormater {

                println("是标准json格式")

            }else{

                println("非标准json格式")

            }

            var errorWrite:NSError?

            var jsonWriteData = NSJSONSerialization.dataWithJSONObject(writeJsonDictory, options: NSJSONWritingOptions.PrettyPrinted, error: &errorWrite)

            var lastParse = NSString(data: jsonWriteData!, encoding: NSUTF8StringEncoding)

            println("转化成json类型 (lastParse)") 

        }

     

  • 相关阅读:
    c++/c语言中如何调用DLL
    fortran出现stack overflow的原因及解决办法
    iOS: ARC和非ARC下使用Block属性的问题
    Objective-C Autorelease Pool 的实现原理
    class-dump 复制到/usr/bin目录不可写,Operation not permitted 解决办法
    Auto Layout 使用心得
    iOS-关于微信支付
    IOS应用安全(五):高级Runtime分析和操作
    Objective-C Runtime 运行时之六:拾遗
    Objective-C Runtime 运行时之五:协议与分类
  • 原文地址:https://www.cnblogs.com/madaha/p/4165095.html
Copyright © 2011-2022 走看看