Cocoa touch 输出西班牙语字符

Cocoa touch 输出西班牙语字符,cocoa-touch,cocoa,Cocoa Touch,Cocoa,我需要在屏幕上打印。我正在使用这段代码,它对除大写字母以外的所有东西都很有效。它显示以下内容:√ë CGContextShowText(textContext, [text UTF8String], strlen([text UTF8String])); 所有这些编码都给出了相同的结果: const char *cn = "Ñ"; NSLog(@"%@", [NSString stringWithUTF8String: cn]); NSLog(@"%C", 0x00d1); NSLog

我需要在屏幕上打印。我正在使用这段代码,它对除大写字母以外的所有东西都很有效。它显示以下内容:√ë

CGContextShowText(textContext, [text UTF8String], strlen([text UTF8String]));    
所有这些编码都给出了相同的结果:

const char *cn = "Ñ";
NSLog(@"%@", [NSString stringWithUTF8String: cn]);
NSLog(@"%C", 0x00d1);
NSLog(@"%@", @"Ñ");


2012-06-20 16:27:09.388 app[406:707] Ñ
2012-06-20 16:27:09.392 app[406:707] Ñ
2012-06-20 16:27:09.394 app[406:707] Ñ

那么,我该如何显示¨而不是√ë,使用NSLog或CGContextShowText?

在我的Mac电脑上,以下功能正常工作:

NSLog(@"%@", [NSString stringWithUTF8String:"Ñ"]);
确保在Xcode中正确设置了文本编码:


这确实有效。但我不确定这能解决问题。我认为CGContextShowText是一个不接受完整范围的遗留函数。如果我使用的是核心文本,这可能不是问题。