將JSON內容寫入並讀取文件

//write

-(void)creatAFile:(NSString *)urlString
{
    NSString *filePath = [self getPlistFile];
    BOOL blHave = [[NSFileManager defaultManager] fileExistsAtPath:filePath];
    if (blHave) {
        [[NSFileManager defaultManager] fileExistsAtPath:filePath];
    }
    
    NSURL *url = [NSURL URLWithString:urlString];
    NSString *jsonString = [[NSString alloc] initWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
    NSData *writer;
    NSArray *jsonArray = [jsonString JSONValue];
    if ([jsonArray count] != 0) {
        writer = [[NSData alloc] initWithData:[jsonString dataUsingEncoding:NSUTF8StringEncoding]];
        BOOL result = [writer writeToFile:filePath atomically:YES];
        if (result) {
            [self showMessageBox:WRITE_SUCCESS];
        }else {
            [self showMessageBox:WRITE_FAIL];
        }
        [writer release];
    }
    else
    {
        [self showMessageBox:WRITE_FAIL];
    }

}

//read

-(NSArray *)readFile:(NSString *)URLString
{
    NSArray *array;
    NSString *filePath = [self getPlistFile];
    BOOL blHave=[[NSFileManager defaultManager] fileExistsAtPath:filePath];
    if (blHave) {
        //[[NSFileManager defaultManager] removeItemAtPath:savedImagePath error:nil];
    }else{
        [self creatFile:URLString];
    }
    
    NSData *reader = [[NSData alloc] initWithContentsOfFile:filePath];
    if (reader == nil) {
        array = nil;
    }else
    {
        NSString *result = [[NSString alloc] initWithData:[reader subdataWithRange:NSMakeRange(0, [reader length])] encoding:NSUTF8StringEncoding];
        
        array = [result JSONValue];
        [reader release];
        [result release];
    }
    return array;
}

-(NSString *)getPlistFile
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *savedFilePath = [documentsDirectory stringByAppendingPathComponent:@"text.plist"];
    return savedFilePath;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章