1

server に送信する Jason ファイルを作成する必要があります。私が見つけた方法はこれです:

NSDictionary* dic = @{@"Username" :userName,
                          @"Firstname" :firstName,
                          @"Lastname" : lastName,
                          @"Email" : email,
                          @"Password" : pass,
      };
     NSData* json = [NSJSONSerialization dataWithJSONObject:dic options:0 error:nil];

dicすでに Json ファイルである を作成した後NSJSONSerializationNSData? dicを に設定しないのはなぜNSDataですか? このシリアル化は正確に何をしますか? NSStringまた、この構造を含むだけを作成しないのはなぜですか?

4

1 に答える 1

2

dicObjective-C 辞書 (キーと値のペアのコレクション) であり、JSON とは関係ありません。ディクショナリの出力は JSON に似ているように見えるかもしれませんが、そうではありません。

NSJSONSerialization辞書から JSON データを作成します。JSON はテキスト形式であり、たとえばhttp://www.json.orgに文書化されています。辞書の JSON データは次のようになります。

{"Firstname":"John","Email":"jon@apple.com","Username":"john","Lastname":"Doe","Password":"topsecret"}

それは、そのクラスのNSJSONSerialization作成者のNSData単なる設計上の決定です。NSStringでデータを文字列に変換できます

NSString *jsonString = [[NSString alloc] initWithData:json encoding:NSUTF8StringEncoding];
于 2013-03-22T08:21:27.580 に答える