【问题标题】:iconv is not working properly in linux (C++)iconv 在 linux (C++) 中无法正常工作
【发布时间】:2012-12-20 07:45:08
【问题描述】:

我想将字符串从 1252 字符代码集转换为 UTF-8。为此,我在基于 linux 平台的 c++ 应用程序开发中使用了 iconv 库。

我使用 API iconv() 并转换了我的字符串。

我的输入中有一个字符 è。 UTF-8 也支持这个字符。所以当我的转换结束时,我的输出也应该包含相同的字符 è。

但是当我看到输出时,字符 è 被转换为我不想要的 è。

还有一点是,如果转换器发现任何未知字符,则应自动将其替换为 UTF-8 的默认替换字符(FFFD),这不会发生。

如何用库 iconv 实现以上两点。

我使用下面的 API 来转换字符串

1)iconv_open("UTF-8","CP1252")

2)iconv() - 传递所需参数

3)iconv_close(cd)

请任何人帮我解决这个问题......

【问题讨论】:

  • 有人可以对此发表评论吗..

标签: iconv


【解决方案1】:

请用它来替换无效的 utf-8 字符。

iconv_open("UTF-8//IGNORE","CP1252")

【讨论】:

    猜你喜欢
    • 2019-12-04
    • 1970-01-01
    • 1970-01-01
    • 2013-08-30
    • 2020-01-08
    • 2020-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多