2013-02-13 134 views
1

我打電話一個web服務和葡萄牙字符與web服務目標C葡萄牙語字符

接收數據

NSMutableURLRequest *請求= [NSMutableURLRequest requestWithURL:URL];

[請求的addValue:@ 「應用/ JSON;字符集= ISO-8859-1」 forHTTPHeaderField:@ 「內容類型」]; 的NSDictionary * allDataDictionary = [NSJSONSerialization JSONObjectWithData:WEBDATA選項:NSISOLatin1StringEncoding0誤差:無];

即使添加了ISO-8859-1的頭,但總是收到這樣的詞典:

{ 
    name = "Lu\U00eds Brito"; 
    user = lbrito; 
    userId = 16; 
}, 
    { 
    name = "Nelson Azevedo"; 
    user = nazevedo; 
    userId = 17; 
}, 
    { 
    name = "M\U00f3nica Morais"; 
    user = mmorais; 
    userId = 19; 
}, 

試圖NSISOLatin1StringEncoding把選項,但沒有做任何事情 的人都知道一個解決方案,圍繞didnt搜索找到很多幫助,謝謝。

回答

1

JSON被定義爲以UTF-8來編碼總是(它可以使用UTF-16和UTF-32爲好,但不ISO 8859-1)

+0

我能然後做,不能改變web服務 – edounl 2013-02-13 17:55:38

+0

使用沒有任何編碼選項的NSJSONSerialization,你會得到完美可用的NSStrings用戶名。 – Gereon 2013-02-14 09:49:17

+0

的NSDictionary * allDataDictionary = [NSJSONSerialization JSONObjectWithData:WEBDATA選項:無誤差:無];並沒有改變 – edounl 2013-02-14 14:24:36