2011-02-01 41 views

回答

0

NSString availableStringEncodings方法将返回可用的编码列表 - 电流(如的iOS 4.2的)选项的存在:

  • NSASCIIStringEncoding
  • NSUnicodeStringEncoding
  • NSISOLatin1StringEncoding
  • NSISOLatin2StringEncoding
  • NSSymbolStringEncoding
+0

这些都是一些较为常用的(虽然`NSUTF8StringEncoding`从该列表中失踪,可能是最常见的一种时下),但更多的是可用,请参阅[常量段] (http://developer.apple.com/library/ios/documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html#//apple_ref/doc/uid/20000154-BAJJAICE)in the`NSString`文档。 – omz 2013-04-27 04:45:47

0

[NSString的availableStringEncodings]

2
//This can print all of encoding that iPhone supports 
NSMutableArray *arrayOfEncodings = [[NSMutableArray alloc] init]; 

const NSStringEncoding *encodings = [NSString availableStringEncodings]; 
while (*encodings != 0){ 
    [arrayOfEncodings addObject:[NSNumber numberWithUnsignedLong:*encodings]]; 
    encodings++; 
} 

for (int i=0; i<arrayOfEncodings.count; i++) { 
    NSStringEncoding aNSStringEncoding = [[arrayOfEncodings objectAtIndex:i] unsignedLongValue]; 
    CFStringEncoding aCFStringEncoding = CFStringConvertNSStringEncodingToEncoding(aNSStringEncoding); 
    CFStringRef encodingNameInCFString = CFStringGetNameOfEncoding(aCFStringEncoding); 
    NSString * encodingName = (NSString*)encodingNameInCFString; 
    NSLog(@"%@", encodingName); 
}