2012-04-27 45 views
1

我創建一個基於API的服務器上的應用程序。服務器目前採用UTF-8編碼。默認文本編碼在iOS

而不是每次API進行訪問,以重新編碼的文本時寫一行代碼,我想我可能也只是設置服務器API具有相同的文字編碼的程序。

唯一的問題是我無法找出默認編碼!

在那裏我會找到這些信息,我可以改變應用程序的默認編碼?

乾杯!

回答

3

沒有默認的編碼。 NSString可以在內部具有各種編碼。

我知道,在Mac OS X,ASCII,UTF-8和UTF-16 W /主機字節順序總是可能的內部表示中,iOS的不應該是不同的,雖然我不能完全確定。我認爲假設stringWithUTF8String:不會導致任何額外的重新編碼是安全的。

+0

由於倉鼠。也許我誤解編碼的基礎上,但如果我把文本從一個服務器,然後讀取它(說的NSLog,或顯示它一個UILabel),必須讀/使用某種編碼的存儲呢?我有編碼問題,在某些字母/符號出現錯誤,所以我認爲UTF-8從SQL API出口被編碼/在應用程式閱讀不同。我可以將NSString設置爲總是在某處使用UTF-8編碼嗎? – Tim 2012-04-28 01:21:22

+0

@Tim只有一個辦法做到UTF-8,它不能做不同的。或者你在錯誤使'NSString'出來的UTF-8字節的時候,或者你的UTF-8是不是真的UTF-8,或者沒有錯誤,但顯示的字體不具有某些符號字形。 – hamstergene 2012-04-28 07:07:27

+0

好吧倉鼠,必須有東西在一個插件轉換它的地方。 – Tim 2012-04-28 07:53:43

0

的NSString的靜態方法將做的工作

+ (NSStringEncoding)defaultCStringEncoding;