GLIB UTF16BE和UTF-16BE之间的区别以及如何支持UTF16BE

时间:2012-06-27 16:04:00

标签: utf-8 glib utf-16 utf obex

我正在使用OBEX推送转移到我们正在使用Android手机构建的嵌入式系统。传输在我的debian桌面上运行,但在嵌入式系统上出现错误而失败 “obexd [741]:已断开连接:Unicode转换失败:无法将转换器从”UTF16BE“打开到”UTF8“”

现在当我输入“iconv -l”时,我可以看到我在我的debian桌面上设置了UTF16BE,但在我的嵌入式系统上却没有。在两个系统上,我都有UTF-8和UTF-16BE,但嵌入式系统上没有UTF8和UTF16BE。我在构建系统中遇到了某些旧版本的某些软件包,所以我想我只需要构建一个更新版本的glib。我设法建立了2.27.93,我认为它比debian stable更新。构建之后,它列出与以前相同的字符集。我还下载了debian源代码并查找了缺少破折号的参考文献,但还没有找到任何内容。

如何获得UTF16BE字符集以及UTF-16BE的支持?他们真的不一样吗?

1 个答案:

答案 0 :(得分:2)

UTF16BE和UTF-16BE肯定没有彼此不同。字符编码名称存在各种不同的大小写和标点符号,通常是因为这些名称适用于对名称语法有不同限制的各种上下文。

你可能有一个文件/usr/lib/gconv/gconv-modules,它可以包含这样的别名:

#       from                    to                      module          cost
alias   UTF16BE//               UTF-16BE//

我建议您只需在嵌入式系统上手动编辑该文件即可添加UTF16BE别名。

相关问题