iOS Swift讀取本地json文件報(bào)錯(cuò)的解決方法
前言
最近閑來(lái)無(wú)聊,本地了一個(gè)json讀取,但沒(méi)想到在用Swift測(cè)試數(shù)據(jù)發(fā)現(xiàn)加載本地json文件一直報(bào)以下錯(cuò)誤:
Error Domain=NSCocoaErrorDomain Code=3840 "JSON text did not start with array or object and option to allow fragments not set." UserInfo={NSDebugDescription=JSON text did not start with array or object and option to allow fragments not set.}
原來(lái)是本地json文件前面有一段注釋/* chrome-extension://pkgccpejnmalmdinmhkkfafefagiiiad/template/fehelper_jsonformat.html */ 然后就讀取不到了```坑啊,去掉注釋就可以正常讀取了
let path = Bundle.main.path(forResource: "countryData", ofType: "json")
let url = URL(fileURLWithPath: path!)
// 帶throws的方法需要拋異常
do {
/*
* try 和 try! 的區(qū)別
* try 發(fā)生異常會(huì)跳到catch代碼中
* try! 發(fā)生異常程序會(huì)直接crash
*/
let data = try Data(contentsOf: url)
let jsonData:Any = try JSONSerialization.jsonObject(with: data, options: JSONSerialization.ReadingOptions.mutableContainers)
let jsonArr = jsonData as! NSArray
for dict in jsonArr {
print(dict)
}
} catch let error as Error! {
print("讀取本地?cái)?shù)據(jù)出現(xiàn)錯(cuò)誤!",error)
}
擴(kuò)展閱讀--蘋(píng)果官網(wǎng) Error Handling
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
Objective-c代碼如何移植為Swift代碼 Objective-c代碼轉(zhuǎn)移到Swift過(guò)程介紹
這篇文章主要介紹了Objective-c代碼如何移植為Swift代碼,Objective-c代碼轉(zhuǎn)移到Swift過(guò)程介紹,需要的朋友可以參考下2014-07-07
Swift?中的?RegexBuilder學(xué)習(xí)指南
這篇文章主要為大家介紹了Swift中的RegexBuilder學(xué)習(xí)指南,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
淺談Swift編程中switch與fallthrough語(yǔ)句的使用
這篇文章主要介紹了Swift編程中switch與fallthrough語(yǔ)句的使用,用于基本的流程控制,需要的朋友可以參考下2015-11-11
Swift利用Decodable解析JSON的一個(gè)小問(wèn)題詳解
這篇文章主要給大家介紹了關(guān)于Swift利用Decodable解析JSON的一個(gè)小問(wèn)題的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-04-04
Swift實(shí)現(xiàn)Selection Sort選擇排序算法的實(shí)例講解
選擇排序是一種穩(wěn)定的排序算法,且實(shí)現(xiàn)代碼通常比冒泡排序要來(lái)的簡(jiǎn)單,這里我們就來(lái)看一下Swift實(shí)現(xiàn)Selection Sort選擇排序的實(shí)例講解2016-07-07
舉例講解Swift編程中switch...case語(yǔ)句的用法
這篇文章主要介紹了Swift編程中switch...case語(yǔ)句的用法,其中fallthrough關(guān)鍵字在switch語(yǔ)句中的使用是重點(diǎn),需要的朋友可以參考下2016-04-04

