iconv在linux(C ++)中无法正常工作

时间:2012-12-20 07:45:09

标签: iconv

我想将一个字符串从1252个char代码集转换为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)

任何人都可以帮我解决这个问题......

1 个答案:

答案 0 :(得分:0)

请使用此替换无效的utf-8字符。

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