如何将字符串的字符编码更改为UTF-8?我正在对python程序进行一些execv调用,但python会返回字符串中的某些字符。我不知道这是一个python问题或c问题,但我想如果我可以更改在c编码的字符串,然后将其传递给python,它应该做的伎俩。那我该怎么做?如何将字符串编码更改为utf 8中的C
谢谢。
如何将字符串的字符编码更改为UTF-8?我正在对python程序进行一些execv调用,但python会返回字符串中的某些字符。我不知道这是一个python问题或c问题,但我想如果我可以更改在c编码的字符串,然后将其传递给python,它应该做的伎俩。那我该怎么做?如何将字符串编码更改为utf 8中的C
谢谢。
C作为一种语言不会促进字符串编码。一个C字符串只是一个以空字符结尾的字符序列(在大多数系统上是8位有符号整数)。
宽字符串(字符类型为wchar_t
,通常为16位整数)也可用于保存较大的字符值;然而,C标准库函数和数据类型再次没有意识到任何字符串编码的概念。
您的问题的答案是确保您传入Python的字符串编码为UTF-8。
但是,为了帮助您完成任何详细的功能,您必须提供有关您的字符串当前如何形成,它们包含的内容以及如何构建exec的参数列表的更多信息。
有没有这样的事情字符编码中C.
一个char*
可以保存任何数据,你如何解释字符是你。例如,printf
通常会将字符转储为标准输出,并且如果您的控制台将这些字符解释为UFT8,则它们将如此显示。
如果你想在C端不同的编码之间转换,你可以看看ICU。
如果您想在Python端的编码之间进行转换,请参阅http://docs.python.org/howto/unicode.html。
向我们展示一些代码,并告诉我们您是否使用Python 2或Python 3. – 2011-04-10 20:10:03
如何获取这些字符串?你有没有尝试从python转换它们:http://docs.python.org/howto/unicode.html。你还在运行什么平台,以及你用什么打印字符串? – 2011-04-10 20:19:41