Swift JSON字符串和字典以及数组的互转


https://www.cnblogs.com/jukaiit/p/9345654.html

 

Swift JSON字符串和字典以及数组的互转

 

1、JSONString转换为字典

1
2
3
4
5
6
7
8
9
10
11
12
13
14
// 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转换为数组

 

1
2
3
4
5
6
7
8
9
10
11
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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
/**
      字典转换为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

1
2
3
4
5
6
7
8
9
10
11
12
13
//数组转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
     
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM