成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

深度解析IOS開發中編碼轉換方法

移動開發 iOS
IOS開發中編碼轉換方法是本文要介紹的內容,主要是來學習一下編碼轉換的內容,不多說,直接來看詳細內容。我們可以使用以下方法進行編碼轉換。

IOS開發編碼轉換方法是本文要介紹的內容,主要是來學習一下編碼轉換的內容,不多說,直接來看詳細內容。我們可以使用以下方法進行編碼轉換。

  1. NSString* str2 = [NSString stringWithCString:str1 encoding:enc1]; 

再調用NSString的cStringUsingEncoding:enc2實現從enc1到enc2的轉換

但是獲取enc枚舉值是個難題

1、NSString.h中只定義了以下編碼值

  1. enum {  
  2.     NSASCIIStringEncoding = 1,                 
  3.     NSNEXTSTEPStringEncoding = 2,  
  4.     NSJapaneseEUCStringEncoding = 3,  
  5.     NSUTF8StringEncoding = 4,  
  6.     NSISOLatin1StringEncoding = 5,  
  7.     NSSymbolStringEncoding = 6,  
  8.     NSNonLossyASCIIStringEncoding = 7,  
  9.     NSShiftJISStringEncoding = 8,           
  10.     NSISOLatin2StringEncoding = 9,  
  11.     NSUnicodeStringEncoding = 10,  
  12.     NSWindowsCP1251StringEncoding = 11,     
  13.     NSWindowsCP1252StringEncoding = 12,     
  14.     NSWindowsCP1253StringEncoding = 13,     
  15.     NSWindowsCP1254StringEncoding = 14,     
  16.     NSWindowsCP1250StringEncoding = 15,     
  17.     NSISO2022JPStringEncoding = 21,          
  18.     NSMacOSRomanStringEncoding = 30,  
  19.  
  20.     NSUTF16StringEncoding = NSUnicodeStringEncoding,        
  21.  
  22. #if MAC_OS_X_VERSION_10_4 <= MAC_OS_X_VERSION_MAX_ALLOWED || __IPHONE_2_0 <= __IPHONE_OS_VERSION_MAX_ALLOWED  
  23.     NSUTF16BigEndianStringEncoding = 0x90000100,           
  24.     NSUTF16LittleEndianStringEncoding = 0x94000100,        
  25.  
  26.     NSUTF32StringEncoding = 0x8c000100,                     
  27.     NSUTF32BigEndianStringEncoding = 0x98000100,           
  28.     NSUTF32LittleEndianStringEncoding = 0x9c000100          
  29. #endif  
  30. }; 

難道iphone中中文還不支持?不會吧?

2、iphone中肯定是支持中文的,只是NSString中沒有定義這個枚舉值,我們可以通過兩種方法獲得這個枚舉值,***個方法是通過CFStringConvertEncodingToNSStringEncoding
比如:

  1. NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);  
  2. NSString* str2 = [NSString stringWithCString:str1 encoding:enc]; 

全部的kCFStringEncoding定義參考CFStringEncodingExt.h另外CFStringConvertIANACharSetNameToEncoding也很有用

3. 另外一種方法是通過

  1. const NSStringEncoding *encodings = [NSString availableStringEncodings];  
  2. NSMutableString *str = [[NSMutableString alloc] init];  
  3. NSStringEncoding encoding;  
  4. while ((encoding = *encodings++) != 0)  
  5. {  
  6.          [str appendFormat: @"%@ === %in", [NSString localizedNameOfStringEncoding:encoding], encoding];  

然后打印str數組,你就可以知道每一個encoding的枚舉值為多少了,比如中文的為-2147482063

小結:深度解析IOS開發編碼轉換方法的內容介紹完了,希望通過本文的學習能對你有所幫助!

責任編輯:zhaolei 來源: 互聯網
相關推薦

2014-02-19 09:59:52

iOS開發Html解析

2011-08-12 13:53:00

IOS框架

2011-08-11 17:00:33

iPhone數據庫SQLite

2011-06-09 14:56:53

QT 編譯

2011-07-07 16:38:21

iOS UITableVie

2011-08-31 15:59:10

LUAWeb 開發

2011-06-16 15:17:16

2011-05-27 17:28:01

Android

2011-08-16 16:24:51

IOS開發HTML5編碼

2018-08-09 20:47:41

2011-08-19 13:51:12

2011-08-04 18:39:32

iOS XML

2011-06-07 17:16:47

iPhone 數據

2011-08-12 14:54:45

iPhone委托

2009-09-24 13:25:58

Hibernate m

2011-08-02 11:30:41

iOS開發 郵件發送

2022-10-18 08:23:38

機器學習轉換器NLP

2016-05-12 15:51:08

前端開發字符編碼

2024-01-11 12:14:31

Async線程池任務

2011-07-29 14:55:25

iPhone開發 動畫過渡
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美黄色片 | 午夜视频一区二区三区 | 一本一道久久a久久精品蜜桃 | 综合久久av | 久久av资源网 | 三级免费| 韩日一区二区 | 精品国产欧美一区二区三区成人 | 浮生影院免费观看中文版 | 国产91精品网站 | 玖玖国产精品视频 | 久久欧美高清二区三区 | 日韩欧美中文字幕在线观看 | 精品久久久久久久久久久下田 | 中文字幕动漫成人 | 999精品视频在线观看 | 亚洲网站免费看 | www亚洲精品 | 亚洲性人人天天夜夜摸 | 日本淫视频 | 久久久久久免费看 | 欧美黄色一区 | 精精国产xxxx视频在线播放7 | 中文在线a在线 | 精品一区av| 日韩精品久久久久 | 免费在线精品视频 | 国产精品精品 | 国产精品美女一区二区三区 | 日本在线精品视频 | 婷婷激情综合 | 亚洲欧美aⅴ | 午夜网站视频 | 日本高清中文字幕 | 91观看| 精品在线观看一区二区 | 在线一区视频 | 精一区二区| 欧美人妖网站 | 欧美在线一区二区视频 | 天天草天天射 |