我有两个问题。从Unicode代码点获取字符 - C++
1 - 我得到Unicode码点以及如何得到这个代码点相关联的角色?例如:
int code_point = 0xD24;
char* chr = (char*) code_point;
但上面的代码通过抛出异常失败。
2 - 假设的代码点存储在一个文件,我读的代码点为一个字符串,我如何将其转换成有效的Unicode字符串?
我要寻找一个平台独立的解决方案。任何帮助将是伟大的!
我有两个问题。从Unicode代码点获取字符 - C++
1 - 我得到Unicode码点以及如何得到这个代码点相关联的角色?例如:
int code_point = 0xD24;
char* chr = (char*) code_point;
但上面的代码通过抛出异常失败。
2 - 假设的代码点存储在一个文件,我读的代码点为一个字符串,我如何将其转换成有效的Unicode字符串?
我要寻找一个平台独立的解决方案。任何帮助将是伟大的!
有你看了International Components for Unicode项目?按照该网站,
ICU是一个成熟的,广泛使用的一组 C/C++,并提供 Unicode的Java库和全球化支持 软件应用程序。 ICU是广泛 便携,使应用程序在所有平台上 相同的结果和C/C++和Java软件之间 。
难道你不是指给char(或者更准确地说,是指向wchar_t)而不是char *指定该值吗?
您正在寻找的名称的字符?在ICU的u_charName()将做到这一点,返回像LATIN SMALL LETTER A
。
你想要什么编码的字符? – 2009-10-18 06:59:56
任何有效的Unicode编码。 UTF-8可能。 – 2009-10-18 07:01:59
UTF-8可能?你得知道。 code_points甚至需要查看的长度将根据编码而有所不同。请参阅http://www.joelonsoftware.com/articles/Unicode.html – 2009-10-18 07:19:05