0

我想将字符串从 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)

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

4

1 回答 1

0

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

iconv_open("UTF-8//IGNORE","CP1252")
于 2013-06-16T16:08:02.527 回答