JSON 値の逆シリアル化に問題があります。
ここに私のコードがあります:
NSDictionary *responseDict = [NSJSONSerialization JSONObjectWithData: data options:0 error: &errorJson];
NSString *innerJson = responseDict[@"d"];
NSMutableDictionary *innerObject = [innerJson JSONValue];
次の印刷画面 (上記のコードの最後の行を実行した直後) でわかるように、辞書 innerObject の項目には、innerJson にはない特殊文字が含まれています。なぜこれが起こるのですか?
編集 - コンソールからの変数の説明を追加
innerJson:
{"ret" : "1", "msg" : "", "list" : ["Granatapfel¤200g¤1", "Brombeeren¤300g¤1", "Papaya (100 g)¤3¤0", "EPF Müesli 1 Messlöffel¤2¤1", "grüner Spargel (190 g)¤2¤1", "Chicorée (130 g)¤1¤0", "mageres Kalbfleisch (190 g)¤3¤0", "Zander (160 g)¤6¤0", "Bachsaibling (190 g)¤2¤0", "Seeteufel (160 g)¤1¤0", "EPF Guetzli Hafer/\nKartoffel-Dinkel 3 Stk.¤0¤0"]}
内部オブジェクト:
{
list = (
"Granatapfel\U00a4200g\U00a41",
"Brombeeren\U00a4300g\U00a41",
"Papaya (100 g)\U00a43\U00a40",
"EPF M\U00fcesli 1 Messl\U00f6ffel\U00a42\U00a41",
"gr\U00fcner Spargel (190 g)\U00a42\U00a41",
"Chicor\U00e9e (130 g)\U00a41\U00a40",
"mageres Kalbfleisch (190 g)\U00a43\U00a40",
"Zander (160 g)\U00a46\U00a40",
"Bachsaibling (190 g)\U00a42\U00a40",
"Seeteufel (160 g)\U00a41\U00a40",
"EPF Guetzli Hafer/\nKartoffel-Dinkel 3 Stk.\U00a40\U00a40"
);
msg = "";
ret = 1;
}