【问题标题】:iPhone: Convert NSString (unicode string) to char array and reverseiPhone:将 NSString(unicode 字符串)转换为 char 数组并反转
【发布时间】:2012-11-25 09:03:23
【问题描述】:

我有一个像 @"anh sẽ đến" 这样的 unicode 字符串。现在我想把它剪成一个字符数组,然后我想把它加入一个字符串并在屏幕上显示。我该怎么做?

谢谢。

【问题讨论】:

    标签: iphone objective-c ios unicode nsstring


    【解决方案1】:

    因为字面量是对象,所以您可以使用 [@"anh sẽ đến" UTF8String] 将其转换为 char 数组,并使用 [NSString stringWithUTF8String:] 将 char 转换为 NSString,但老实说,使用 +[NSString stringWithFormat:@"anh sẽ đến%c", myUnichar] 可能比使用更容易在字符串容器之间来回切换。

    【讨论】:

    • 我这样做看起来像 const char *c = [@"anh sẽ đến" UTF8String]; NSString *tempStr = [[NSString alloc]initWithCString:&c[i-1]]; tempPlayedStr = [NSStringstringWithFormat:@"%@%@",tempPlayedStr,tempStr];但还是不行
    • 因为您似乎指向您的 char 数组两次(一次是取消引用,一次是 &),然后从指针中减去 1。
    • 你为什么不使用+stringWithUTF8String:? -initWithCString: 需要 ASCII 输入,而不是 Unicode。
    • ...initWithCString: 采用编码参数是有原因的。
    • 这太荒谬了。使用文字,并调用 -substringToIndex: 而不是 this。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-18
    • 2012-02-29
    • 2011-04-04
    • 1970-01-01
    • 2018-07-04
    • 1970-01-01
    相关资源
    最近更新 更多