Encoding 将带有umlauts的NSString转换为const char*

Encoding 将带有umlauts的NSString转换为const char*,encoding,nsstring,char,diacritics,Encoding,Nsstring,Char,Diacritics,我花了几个小时来解决这个问题,但什么也没找到。对不起,若答案是在互联网上的某个地方,我真的找不到它 我有一个NSString*头=@“ästrç”或使用德语、瑞典语等语言的任何其他UMLAUT 我需要将此NSString转换为: const char* cString = [header cStringUsingEncoding: NSASCIIStringEncoding]; 注意:NSASCIIStringEncoding,NSMacOSRomanStringEncoding不工作 我也试

我花了几个小时来解决这个问题,但什么也没找到。对不起,若答案是在互联网上的某个地方,我真的找不到它

我有一个
NSString*头=@“ästrç”或使用德语、瑞典语等语言的任何其他UMLAUT

我需要将此
NSString
转换为:

const char* cString = [header cStringUsingEncoding: NSASCIIStringEncoding];
注意:
NSASCIIStringEncoding
NSMacOSRomanStringEncoding
不工作

我也试过:

const char *cString = [header UTF8String];
不工作

有人能帮我吗?这很奇怪

编辑:

“不工作”是指如果我有以下特征:

它将输出以下内容:

我不在乎NSLog。我需要const char*作为PDF格式的写入方法:

HPDF_Page_TextOut  (HPDF_Page    page, HPDF_REAL    xpos, HPDF_REAL    ypos, const char  *text)

const char*cString=[header UTF8String]
可以工作,但您可能正在使用
NSLog(“%s,cString”);

NSLog将不工作,因为
%s
需要的是ASCII字符串而不是UTF-8


详细信息:.

最后一个(
-[NSString UTF8String]
)应该可以工作。定义“不工作”“。我已经看过了,还有很多其他的帖子。只是它不能满足我的需要。使用上面的编辑。@benyboariu您必须了解您的
HPDF\u Page\u TextOut
函数接受的编码。我不知道我的心思在哪里。当然,我必须查看该方法接受的编码。现在工作。非常感谢你。