0

を繰り返すことで、JSONドキュメントを正常に生成できますNSMutableDictionary。これNSMutableDictionaryには、'sでもある2つの値が含まれNSMutableDictionary、そのキーはそれぞれreports、、resultsです。

JSONドキュメントを構成するコードは次のとおりです。

NSMutableDictionary *jsonDoc = [NSMutableDictionary dictionary];
    [jsonDoc setObject:results forKey:@"results"];
    [jsonDoc setObject:reports forKey:@"reports"];

    NSError *ierror = nil;
    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:jsonDoc options:NSJSONWritingPrettyPrinted error:&ierror];
    NSString *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
    NSLog(@"JSON Output: %@", jsonString);

そして私のJSON出力は次のようになります:

JSON Output: {
  "results" : [
    {
      "date" : "2012-12-25T16:58:25",
      "name" : "Test 1",
      "result" : "Fail"
    },
    {
      "date" : "2012-12-25T16:58:33",
      "name" : "Test 2",
      "result" : "Pass"
    },
    {
      "date" : "2012-12-25T16:58:38",
      "name" : "Test 3",
      "result" : "Pass"
    },
    {
      "date" : "2012-12-25T16:58:45",
      "name" : "Test 4",
      "result" : "Fail"
    }
  ],
  "reports" : [

  ]
}

私は私が得ている出力に非常に満足しています。ただし、ここで実行したいのは、出力するデータの前に、後からJSON Output: {前に追加の詳細を付けることです"results"。追加の詳細は、、、、、、などの単純NSStringな値です。現在のコード構造を前提として、これをどのように行うのでしょうか"Name:"。問題は、コンソールに出力するときだけでなく、最初にJSONオブジェクトを作成するときにこれらの詳細を元のJSONオブジェクトの一部にしたいということです。"Address""City""Province""Postal Code"

4

1 に答える 1

0

jsonDocディクショナリに追加するキーと値のペアごとにsetObject:forKey:を呼び出すだけです。辞書は順序付けられていないため、質問の2つの呼び出しの上に置くか下に置くかは関係ありません。

于 2012-12-25T23:46:02.277 に答える