Soketleri ve JSON kullanarak bir nodejs-server ile görüşen bir uygulama yapımındayım ve iOS 5'in kendi NSJSONSerialization'a sahip olduğunu düşündüğüm için bunun yol olabileceğini düşündüm takip et. Daha önce hafif yail kütüphanesini kullandım.NSJSONSerialization and Unicode, birlikte güzel çalmayacak
Neyse, NSJSONSerialization taşıma sonrasında Değişiklikten önce, karakter Ö
sunucuya güzel göndereceği ve sırt hala Ö
olmak, ama şimdi, NSJSONSerialization unicode char hala Ö
bırakır kodlama ile sorunu karşılaşmaya başladı \U00f6
.
Belgelerin okunması, JSON nesnelerinin varsayılan olarak UTF8'e dönüştürüldüğü anlamına gelir. Ve yanıtı sunucudan basit bir NSString'e dönüştürdüğümde, Ö
beklendiği gibi ortaya çıkıyor, ancak hala JSON'da.
Lütfen düşüncelerinizle ilgili olarak bana yardımcı olun, ya da yayaya dönmeli ya da yerleşik NSJSONSerialization'u kullanmalı mıyım?
, Simon teşekkür ederiz
"NSJSONSerialization" ın sonuç dizelerinde hala "\ U00f6" kaldığını nasıl belirlediğinize karar verebilir misiniz? Testlerimde, doğru şekilde 'ö' kodunu çözer. Ortaya çıkan "NSDictionary"/"NSArray" öğesinin varsayılan '-description 'temsilini gerçekten karıştırmıyor olduğundan emin misiniz? – wulong
ne demek istiyorsun? Basit bir 'NSLog (@"% @ ", [NSJSONSerialization JSONObjectWithData: veri seçenekleri: 0 hata: &err]);', kodu çözülmüş unicode olan bir dizgeyle çıktılar, yani '\ U00f6'. – Simon
NSLog'un temsil etmeyi seçtiği yol olabilir. karakter günlüğü temiz tutmak uğruna asıl karakter yerine kaçan kodla birlikte Veri nesnesini doğrudan bir ağ kitaplığından NSJSONSerialization'a mı aktarıyorsunuz? Bazı örnek kodlar gönderebilir misiniz? –