如何將字符串的字符編碼更改爲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