0
我已經創建了一個使用.net環境的plist,並且在創建之後,我在plist編碼類型中將編碼類型設置爲「iso-8859-1」。然後我嘗試閱讀並在表格視圖中顯示。值不符合預期。讀取用iso-8859-1生成的plist
它具有不正確編碼類型的字符很少。
我該怎麼辦?
我已經創建了一個使用.net環境的plist,並且在創建之後,我在plist編碼類型中將編碼類型設置爲「iso-8859-1」。然後我嘗試閱讀並在表格視圖中顯示。值不符合預期。讀取用iso-8859-1生成的plist
它具有不正確編碼類型的字符很少。
我該怎麼辦?
你可以嘗試加載文件作爲NSString,你可以指定一個編碼。
NSString* plistString = [NSString stringWithContentsOfURL:...
encoding:NSISOLatin1StringEncoding
error:NULL];
然後用the -propertyList
method將字符串轉換爲plist。
id plist = [plistString propertyList];
但它是更好地確保您始終在C#側產生UTF-8/UTF-16。
感謝您的代碼。但我仍然面臨問題。我用xcode打開了這個plist文件,它有這樣的字符「Sjö」,但是當我使用你的代碼並且嘗試了uitableview或nslog時,它顯示爲「Sjö」我該怎麼辦? – thndrkiss 2010-09-11 18:27:11
@thndrkiss:在UTF-8 ='「ö」'中,ASCII ='00f6'中的''ö'''='c3 b6'。看起來這個文件已經在UTF-8上了。 – kennytm 2010-09-11 19:03:30
偉大的肯尼。優秀的觀察。後來我在很長一段時間後發現了相同的事實。謝謝。 – thndrkiss 2010-09-12 06:24:25