Json的本地写入和读取,也可以方便在开发中数据的调试

Posted 佛系码农

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Json的本地写入和读取,也可以方便在开发中数据的调试相关的知识,希望对你有一定的参考价值。

不知道小伙伴们,在开发中,数据调试的过程中,尤其是很多状态的情况下调试,是不是总是麻烦后台的小哥改变不同的状态,总感觉这样太麻烦了,

那么就可以,把数据写入到本地,然后去沙盒中,找到这个写入的文件,直接去改变这个文件中的数据。之后就可以不用再网络请求了,可以直接读取这个文件的数据来调试自己的界面了,

YXJsonSaveOrLoadTool.h

@interface YXJsonSaveOrLoadTool : NSObject

+(instancetype)shareTool;
//** 写入数据 */
-(void)SaveJsonWith:(id)dict UrlType:(NSString *)urlType;
//** 读取数据 */
-(NSMutableDictionary*)loadJsonFormFile:(NSString *)urlType;
@end

 

YXJsonSaveOrLoadTool.m

@implementation YXJsonSaveOrLoadTool

+(instancetype)shareTool{
    static dispatch_once_t onceToken;
    static YXJsonSaveOrLoadTool *instance;
    dispatch_once(&onceToken, ^{
        
        instance = [[YXJsonSaveOrLoadTool alloc]init];
    });
    return instance;
}

//** 写入数据 */
-(void)SaveJsonWith:(id)dict UrlType:(NSString *)urlType{

    if (dict == nil || dict == [NSNull null]) {
        return;
    }
    if (urlType.length==0) {
        urlType = @"test";
    }
    NSString * path = [self pathForDataFile:urlType];

    [dict writeToFile:path atomically:YES];
    
}
//** 读取数据 */
-(NSMutableDictionary*)loadJsonFormFile:(NSString *)urlType
{
    NSString  * path = [self pathForDataFile:urlType];
    NSMutableDictionary * rootObject = [[NSMutableDictionary alloc] initWithContentsOfFile:path];
    if (rootObject == nil ) {
        rootObject = [[NSMutableDictionary alloc] initWithCapacity:0];
    }
    return rootObject;
}
//** 路径 */
-(NSString *)pathForDataFile:(NSString *)urltype {
    
    NSArray* documentDir = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString* path = nil;

    if (documentDir) {
        path = [documentDir objectAtIndex:0];
    }
    return [NSString stringWithFormat:@"%@/%@.%@", path,urltype,@"json"];
}

@end

 

 如果有什么错误的地方,请不惜指教,??

以上是关于Json的本地写入和读取,也可以方便在开发中数据的调试的主要内容,如果未能解决你的问题,请参考以下文章

js能把数据写入到json文件中吗

如何从 React.js 读取和写入本地 JSON 文件?

Ionic 5:如何写入本地 JSON 文件?

iOS中 JSON格式文件的写入和读取

是否可以将数据写入本地 json 文件,除了角度之外啥都没有?

04-numpy读取本地数据和索引