zoukankan      html  css  js  c++  java
  • Swift JSON字符串和字典以及数组的互转

    1、JSONString转换为字典

        // JSONString转换为字典
     
        func getDictionaryFromJSONString(jsonString:String) ->NSDictionary{
    
            let jsonData:Data = jsonString.data(using: .utf8)!
    
            let dict = try? JSONSerialization.jsonObject(with: jsonData, options: .mutableContainers)
            if dict != nil {
                return dict as! NSDictionary
            }
            return NSDictionary()
            
    
        }
    

    2、JSONString转换为数组

    func getArrayFromJSONString(jsonString:String) ->NSArray{
            
            let jsonData:Data = jsonString.data(using: .utf8)!
            
            let array = try? JSONSerialization.jsonObject(with: jsonData, options: .mutableContainers)
            if array != nil {
                return array as! NSArray
            }
            return array as! NSArray
            
        }
    

      

    3、字典转换为JSONString

    /**
         字典转换为JSONString
         
         - parameter dictionary: 字典参数
         
         - returns: JSONString
         */
        func getJSONStringFromDictionary(dictionary:NSDictionary) -> String {
            if (!JSONSerialization.isValidJSONObject(dictionary)) {
                print("无法解析出JSONString")
                return ""
            }
            let data : NSData! = try? JSONSerialization.data(withJSONObject: dictionary, options: []) as NSData!
            let JSONString = NSString(data:data as Data,encoding: String.Encoding.utf8.rawValue)
            return JSONString! as String
    
        }
    

     

    4、数组转换为JSONString

        //数组转json
        func getJSONStringFromArray(array:NSArray) -> String {
            
            if (!JSONSerialization.isValidJSONObject(array)) {
                print("无法解析出JSONString")
                return ""
            }
            
            let data : NSData! = try? JSONSerialization.data(withJSONObject: array, options: []) as NSData!
            let JSONString = NSString(data:data as Data,encoding: String.Encoding.utf8.rawValue)
            return JSONString! as String
            
        }
    

      

  • 相关阅读:
    函数的进阶
    几个基础 类型循环删除
    函数的初识
    python3的 基础
    python3 最基础
    demo
    [转] ajax方法
    <codis><jodis>
    <Redis Advance><Pipelining><Memory Optimization><Expire><Transactions>
    <HBase><Scan>
  • 原文地址:https://www.cnblogs.com/jukaiit/p/9345654.html
Copyright © 2011-2022 走看看