투케이2K

64. (swift/xcode) [유틸 파일] Json Object 형식 문자열 데이터를 딕셔너리 (dictionary) 로 변환 수행 실시 본문

Swift

64. (swift/xcode) [유틸 파일] Json Object 형식 문자열 데이터를 딕셔너리 (dictionary) 로 변환 수행 실시

투케이2K 2022. 3. 28. 15:52

[개발 환경 설정]

개발 툴 : XCODE

개발 언어 : SWIFT

 

[소스 코드]

    // MARK: - [Json Object 형식 문자열을 딕셔너리로 변환 수행 실시]
    func jsonObject_To_Dic(jsonString: String) -> Dictionary<String, Any> {
        
        /*
        // -----------------------------------------
        [jsonObject_To_Dic 메소드 설명]
        // -----------------------------------------
        1. Json Object 형식 문자열을 딕셔너리로 변환 수행 실시
        // -----------------------------------------
        2. 호출 방법 :
         let jsonData = "{\n" +
                         "  \"name\" : \"투케이\",\n" +
                         "  \"age\" : 29,\n" +
                         "  \"color\" : [\"red\", \"yellow\"]\n" +
                         "}";
         
         let dicData : Dictionary<String, Any> = C_Util().jsonObject_To_Dic(jsonString: jsonData)
        // -----------------------------------------
        3. 리턴 반환 : 딕셔너리 데이터 반환
        // -----------------------------------------
        */
        
        // [초기 리턴 데이터 변수 선언 실시]
        var returnData : Dictionary<String, Any> = [String : Any]()
        
        // [인풋 데이터 널 체크 수행 실시]
        if jsonString != nil
            && jsonString.count>0
            && jsonString != ""
            && jsonString.trimmingCharacters(in: .whitespacesAndNewlines) != ""
            && jsonString.trimmingCharacters(in: .whitespacesAndNewlines) != "null"
            && jsonString.isEmpty == false {
            
            // [딕셔너리 데이터 변환 수행 실시]
            do {
                let dicCreate = try JSONSerialization.jsonObject(with: Data(jsonString.utf8), options: []) as! [String:Any]
                
                // [리턴 변수에 삽입 실시]
                returnData = dicCreate
            } catch {
                print("")
                print("====================================")
                print("[C_Util >> jsonObject_To_Dic() :: Json Object 형식 문자열을 딕셔너리로 변환 수행 실시]")
                print("-------------------------------")
                print("catch :: ", error.localizedDescription)
                print("====================================")
                print("")
            }
        }
        
        // [로그 출력 실시]
        print("")
        print("====================================")
        print("[C_Util >> jsonObject_To_Dic() :: Json Object 형식 문자열을 딕셔너리로 변환 수행 실시]")
        print("-------------------------------")
        print("input [jsonString] :: \(jsonString)")
        print("-------------------------------")
        print("return [Dictionary] :: \(returnData)")
        print("====================================")
        print("")
        
        // [리턴 데이터 반환 실시]
        return returnData
    }
 

[결과 출력]

 

 

반응형
Comments