從本地讀取json文件

今天需要從本地Resource文件夾里讀取json文件仔役,發(fā)現(xiàn)用如下代碼有問題:

  • 代碼一
NSString *path = [self pathForLocationsDataFile];
locationDict = [[NSMutableDictionary alloc] initWithContentsOfFile:path];
// locationDict一直為nil

剛開始一直以為路徑下沒有對應(yīng)的json文件掷伙,后來跑到.app路徑下看,json文件的確存在炎咖。

后來改用如下代碼,ok了

  • 代碼二
NSString *jsonPath = [[NSBundle mainBundle] pathForResource:@"divesite" ofType:@"json"];
NSData *data=[NSData dataWithContentsOfFile:jsonPath];
NSError *error;
id jsonObject=[NSJSONSerialization JSONObjectWithData:data
                                                      options:NSJSONReadingAllowFragments
                                                        error:&error];

但是寒波,如果你在代碼里面創(chuàng)建一個Dictionary對象乘盼,用代碼三的方法把它寫到本地文件里,在從文件里把它讀出來是可以的俄烁。

  • 代碼三
- (NSString *) pathForDataFile {
    NSArray*    documentDir = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString*   path = nil;
    
    if (documentDir) {
        path = [documentDir objectAtIndex:0];
    }
    
    return [NSString stringWithFormat:@"%@/%@", path, @"test.bin"];
}

- (void) saveDataToDisk:(NSMutableDictionary*)dict
{
    NSString * path = [self pathForDataFile];
    
    if (dict == nil) {
        return;
    }
    [dict writeToFile:path atomically:YES];
}

- (NSMutableDictionary*) loadDataFromDisk
{
    NSString     * path         = [self pathForDataFile];
    
    NSMutableDictionary * rootObject = [[NSMutableDictionary alloc] initWithContentsOfFile:path];
    if (rootObject == nil) {
        rootObject = [[NSMutableDictionary alloc] initWithCapacity:0];
    }
    return rootObject;
}

我決定去看看test.bin長啥樣绸栅?test.bin竟然是xml的格式,難怪使用

NSMutableDictionary * rootObject = [[NSMutableDictionary alloc] initWithContentsOfFile:path];

的方式不能讀取一個json格式的文件页屠!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末粹胯,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子辰企,更是在濱河造成了極大的恐慌风纠,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,807評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件牢贸,死亡現(xiàn)場離奇詭異竹观,居然都是意外死亡,警方通過查閱死者的電腦和手機潜索,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,284評論 3 399
  • 文/潘曉璐 我一進店門臭增,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人竹习,你說我怎么就攤上這事誊抛。” “怎么了整陌?”我有些...
    開封第一講書人閱讀 169,589評論 0 363
  • 文/不壞的土叔 我叫張陵拗窃,是天一觀的道長瞎领。 經(jīng)常有香客問我,道長随夸,這世上最難降的妖魔是什么九默? 我笑而不...
    開封第一講書人閱讀 60,188評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮逃魄,結(jié)果婚禮上荤西,老公的妹妹穿的比我還像新娘澜搅。我一直安慰自己伍俘,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 69,185評論 6 398
  • 文/花漫 我一把揭開白布勉躺。 她就那樣靜靜地躺著癌瘾,像睡著了一般。 火紅的嫁衣襯著肌膚如雪饵溅。 梳的紋絲不亂的頭發(fā)上妨退,一...
    開封第一講書人閱讀 52,785評論 1 314
  • 那天,我揣著相機與錄音蜕企,去河邊找鬼咬荷。 笑死,一個胖子當(dāng)著我的面吹牛轻掩,可吹牛的內(nèi)容都是我干的幸乒。 我是一名探鬼主播,決...
    沈念sama閱讀 41,220評論 3 423
  • 文/蒼蘭香墨 我猛地睜開眼唇牧,長吁一口氣:“原來是場噩夢啊……” “哼罕扎!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起丐重,我...
    開封第一講書人閱讀 40,167評論 0 277
  • 序言:老撾萬榮一對情侶失蹤腔召,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后扮惦,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體臀蛛,經(jīng)...
    沈念sama閱讀 46,698評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,767評論 3 343
  • 正文 我和宋清朗相戀三年崖蜜,在試婚紗的時候發(fā)現(xiàn)自己被綠了掺栅。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,912評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡纳猪,死狀恐怖氧卧,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情氏堤,我是刑警寧澤沙绝,帶...
    沈念sama閱讀 36,572評論 5 351
  • 正文 年R本政府宣布搏明,位于F島的核電站,受9級特大地震影響闪檬,放射性物質(zhì)發(fā)生泄漏星著。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,254評論 3 336
  • 文/蒙蒙 一粗悯、第九天 我趴在偏房一處隱蔽的房頂上張望虚循。 院中可真熱鬧,春花似錦样傍、人聲如沸横缔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,746評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽茎刚。三九已至,卻和暖如春撤逢,著一層夾襖步出監(jiān)牢的瞬間膛锭,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,859評論 1 274
  • 我被黑心中介騙來泰國打工蚊荣, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留初狰,地道東北人。 一個月前我還...
    沈念sama閱讀 49,359評論 3 379
  • 正文 我出身青樓互例,卻偏偏與公主長得像奢入,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子敲霍,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,922評論 2 361

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理俊马,服務(wù)發(fā)現(xiàn),斷路器肩杈,智...
    卡卡羅2017閱讀 134,717評論 18 139
  • 218.241.181.202 wxhl60 123456 192.168.10.253 wxhl66 wxhl6...
    CYC666閱讀 1,393評論 0 6
  • 一柴我、iOS中的沙盒機制 iOS應(yīng)用程序只能對自己創(chuàng)建的文件系統(tǒng)讀取文件,這個獨立扩然、封閉艘儒、安全的空間,叫做沙盒夫偶。它一...
    1d5cb7cff98d閱讀 1,779評論 0 0
  • iOS開發(fā)系列--網(wǎng)絡(luò)開發(fā) 概覽 大部分應(yīng)用程序都或多或少會牽扯到網(wǎng)絡(luò)開發(fā)界睁,例如說新浪微博、微信等兵拢,這些應(yīng)用本身可...
    lichengjin閱讀 3,672評論 2 7
  • JSON JSON和XML都是需要解析的 JSON是一種輕量級的數(shù)據(jù)格式翻斟,一般用于數(shù)據(jù)交互服務(wù)器返回給客戶端的數(shù)據(jù)...
    JonesCxy閱讀 1,864評論 2 10