string轉utf8後解決TTS識別中文的問題

2021-09-08 13:08:03 字數 481 閱讀 4286

今天遇到string字元編碼的問題,由於遇到了用tts將文字轉語音的乙個api,裡面的中文必須是utf8的,我傳了乙個uncode編碼的中文進去,就一直不能正常讀出來。後來才發現是編碼的問題。這裡在網上找到兩個api,可將string 傳成utf8編碼的string。挺好用的。

記錄下來:

std::string string_to_utf8(const std::string & str)

bool istextutf8(char* str,ulonglong length)

}else //多位元組符的非首位元組,應為 10******

}if( nbytes > 0 ) //違返規則

return false;

if( ballascii ) //假設所有都是ascii, 說明不是utf-8

return false;

return true;

}

UTF 8亂碼解決

在解決亂碼問題前,必須先搞清楚幾個相關的問題。為每個jsp頁面設定了其編碼格式 utf 8 但傳遞資料到另一頁麵時依然顯示為亂碼?首先要需要了解的是web容器預設編碼是iso 8859 1,乙個漢字占用兩個位元組,而在utf 8中乙個漢字占用三個位元組。所以在資料傳遞過程中,必須手動設定容器編碼格式...

《轉》亂碼UTF8和UTF 8網頁編碼

曾經被字符集間複雜的轉換搞怕了,正好新專案要求國際化,需要能夠顯示多種語言,於是一開始就規定統統使用 utf 8 編碼。所有 檔案使用 utf 8 編碼存檔 mysql資料庫所有表,所有字段設定 collation 中文翻譯為 整理 屬性為 utf8 general ci 所有頁面輸出 即便是這樣,...

java gbk轉utf 8亂碼問題

最近在做乙個反饋功能,把資料反饋到對方公司 我公司是gbk編碼,對方公司是utf 8編碼。因此,我需要將gbk編碼資料轉換成utf 8編碼資料,這樣對方 才不會亂碼。最簡單的方法是將httpclient的contentcharset設定為utf 8 如果contentcharset是gbk並且又不想...