1

我想移植我们的应用程序(适用于 Windows、Linux、Solaris、AIX 等),但我对语言环境有很多问题。此代码适用于除 OSX 之外的所有平台:

#define SIZE 1000

int main(int argc, const char * argv[])
{    
    char dest[SIZE];
    wchar_t *dptr = L"árvíztűrőtükörfúrógép";
    size_t count = SIZE;
    size_t length;

    setlocale(LC_CTYPE, "");

    length = wcstombs(dest, dptr, count);
    printf("%d characters were converted.\n", length);
    printf("The converted string is \"%s\"\n\n", dest);
}

请帮帮我,以 ISO-8859-2 编码在终端中打印该文本!

非常感谢!

4

1 回答 1

3

Apple Macintosh 既不使用 ISO 8859-1 也不使用 ISO 8859-2 编码。相反,Apple 使用专有代码表,即 MacRoman 用于西欧语言,MacCentralEuropean 用于东欧语言。Macintosh 上的 WWW 浏览器(Netscape Navigator 2 和更高版本,以及 Microsoft Internet Explorer 2.1)自动执行从 Internet 上使用的 ISO 8859 编码到 Macintosh 本地字符集的重新编码。

取自这里: http: //nl.ijs.si/gnusl/cee/iso8859-2.html

这是您需要的:http ://en.wikipedia.org/wiki/Mac_OS_Roman

这是 UTF-8 <-> MacRoman 转换代码:http ://alienryderflex.com/utf-8/

只有“u”和“o”的修饰符(插入这些字母之后)来获得“ő”和“ű”字符。

请参阅此处的表格http://www.alanwood.net/demos/macroman.html

"˝", Code=0xFD, U+02DD, "双重音", 间距修饰字母

(“思考不同”在行动)

于 2012-05-28T15:38:07.173 回答