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