我已经能够找到类似的方法-[NSString stringWithCString:encoding:]
但是当cstring是指针时它们似乎不能很好地发挥作用.
Bro*_*olf 37
首先,不要使用initWithCString
,它已被弃用.
有几种方法可以做到这一点:
const *char cString = "Hello";
NSString *myNSString = [NSString stringWithUTF8String:cString];
Run Code Online (Sandbox Code Playgroud)
如果您需要其他编码,如ASCII:
const *char cString = "Hello";
NSString *myNSString = [NSString stringWithCString:cString encoding:NSASCIIStringEncoding];
Run Code Online (Sandbox Code Playgroud)
如果你想看到的所有字符串编码可用,在Xcode中,按住命令+选项然后双击就NSASCIIStringEncoding
在上面的代码块.
您将能够看到Apple在哪里声明了字符串编码类型的枚举.比试图在文档中找到它快一点.
您可能需要的其他一些:
NSASCIIStringEncoding
NSUnicodeStringEncoding // same as NSUTF16StringEncoding
NSUTF32StringEncoding
Run Code Online (Sandbox Code Playgroud)
Checkout Apple的NSString类参考(编码位于页面底部)
Tho*_*asW 24
使用现代Objective-C(至少从Xcode 5开始),你可以做到:
char const* cString = "Hello";
NSString *myNSString = @(cString);
Run Code Online (Sandbox Code Playgroud)
Chu*_*uck 10
stringWithCString:encoding:
从给定的C字符串创建NSString.要从NSString创建C字符串,请使用UTF8String
方法(通常首选)或cStringUsingEncoding:
(如果需要UTF-8以外的编码).
归档时间: |
|
查看次数: |
32232 次 |
最近记录: |