Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c iOS:以编程方式将数据写入json文件_Objective C_Json_Nsmutablearray_Writefile - Fatal编程技术网

Objective c iOS:以编程方式将数据写入json文件

Objective c iOS:以编程方式将数据写入json文件,objective-c,json,nsmutablearray,writefile,Objective C,Json,Nsmutablearray,Writefile,我的json文件如下所示: { "images": [ "straight up kick.png", "women kick.png", "Taekwondo Kanji vertical.png", "face kick3.png", "flexibility.png", "Punch.png", "hook kick.png", "front kick 2.png" ] } 我以编程方式阅读上面的json,如下所示: NSString *path =

我的json文件如下所示:

{
  "images": [
  "straight up kick.png",
  "women kick.png",
  "Taekwondo Kanji vertical.png",
  "face kick3.png",
  "flexibility.png",
  "Punch.png",
  "hook kick.png",
  "front kick 2.png"
 ]
}
我以编程方式阅读上面的json,如下所示:

NSString *path = [[NSBundle mainBundle] pathForResource:@"generated" ofType:@"json"];
NSData *data = [NSData dataWithContentsOfFile:path];
NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:nil];

NSMutableArray * jsonimages = [dict objectForKey:@"images"];
NSLog(@"images %@", jsonimages);
我想通过编程方式写入json文件,向名为jsonimages的数组添加更多项。 Json文件名为generated.Json


任何帮助都将不胜感激。

您尝试过什么?您的问题是在
dict
中添加对象(注意它是不可变的)、
jsonimages
还是将其保存回去?因为您无法写入
[NSBundle mainBundle]
- (void)writeStringToFile:(NSString*)aString {

    // Build the path, and create if needed.
    NSString* filePath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
    NSString* fileName = @"generated.json";
    NSString* fileAtPath = [filePath stringByAppendingPathComponent:fileName];

    if (![[NSFileManager defaultManager] fileExistsAtPath:fileAtPath]) {
        [[NSFileManager defaultManager] createFileAtPath:fileAtPath contents:nil attributes:nil];
    }

    // The main act...
    [[aString dataUsingEncoding:NSUTF8StringEncoding] writeToFile:fileAtPath atomically:NO];
}

- (NSString*)readStringFromFile {

    // Build the path...
    NSString* filePath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
    NSString* fileName = @"generated.json";
    NSString* fileAtPath = [filePath stringByAppendingPathComponent:fileName];

    // The main act...
    return [[NSString alloc] initWithData:[NSData dataWithContentsOfFile:fileAtPath] encoding:NSUTF8StringEncoding];
}