import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
JsonGPL()
}
func JsonGPL()
{
//Json对象
let user:[String: Any] = [
"uname": "张三",
"tel": ["mobile": "138", "home": "010"]
]
//判断是否JSon格式
if !JSONSerialization.isValidJSONObject(user) {
print("is not a valid json object")
}
//利用自带的json库转换成Data
//设置options为JSONSerialization.WritingOptions.prettyPrinted,则打印格式更好阅读
let data = try? JSONSerialization.data(withJSONObject: user, options: .prettyPrinted)
let Jsonstr = String(data: data!, encoding: .utf8)
print("Jsonstr============\(Jsonstr)")
//Data转换JSON
let Json2 = try? JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! [String: Any]
print("Json2=============\(Json2)")
if !JSONSerialization.isValidJSONObject(Json2) {
print("Json2 is not a valid json object")
}
//验证JSON对象可用性
let uname = Json2?["uname"]
let mobile = (Json2?["tel"] as! [String: Any])["mobile"]
print("get Json Object:","uname: \(uname), mobile: \(mobile)")
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
JSONSerialization解析JSON数据
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- json解析--Gson使用和json解析类详解 1.对于标准的json数据格式,可以使用Google 提供的用来...
- Senior进阶 网络之数据解析之XML解析和JSON解析的用法 XML解析之SAX解析 XML解析之DOM解析 ...
- 手机的优势是携带方便,可以随时打开,而且手机通常总是处于联网状态的,所以网络支持对于手机很重要。而且Java的网络...
- GSON是谷歌提供的开源库,用来解析Json格式的数据,非常好用。如果要使用GSON的话,则要先下载gson-2....