【问题标题】:convert NSString to const char *将 NSString 转换为 const char *
【发布时间】:2012-01-03 09:38:49
【问题描述】:

我想将 nsstring 值转换为 const char *。

NSString *s = @"יככעימבבגיננימ"; //Hebrew characters
const char *t = [s cStringUsingEncoding:NSUTF8StringEncoding];
NSLog(@"\n str = %s",t);

控制台显示如下“◊ô◊õ◊õ◊¢◊ô◊û◊ë◊ë◊í◊ô◊†◊†◊ô◊û”。

如何将实际的 NSString 值转换为 const char*?

谢谢, 洛甘娜坦

【问题讨论】:

标签: iphone ios


【解决方案1】:

这只是因为NSLog 中的%s 表示ASCII 字符串(准确地说是纯C 8 位字符串),而不是UTF8。

试试下面的怎么样?:

NSString *s = @"יככעימבבגיננימ"; //Hebrew characters
NSLog(@"\n str = %@",s);

您也可以注销 UTF16 数组:

const wchar_t *t = (const wchar_t*)[s cStringUsingEncoding:NSUTF16StringEncoding];
NSLog(@"\n str2 = %S",t);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多