我獲得通過使用下面的代碼從一個QTextEdit
對象的內容:如何確定在Qt中QTextEdit文本的編碼?
QString text=my_QTextEdit.toPlainText();
那是什麼QTextEdit
用途,一個是什麼編碼在QString
我從toPlainText()
回電使用的編碼?
謝謝。
我獲得通過使用下面的代碼從一個QTextEdit
對象的內容:如何確定在Qt中QTextEdit文本的編碼?
QString text=my_QTextEdit.toPlainText();
那是什麼QTextEdit
用途,一個是什麼編碼在QString
我從toPlainText()
回電使用的編碼?
謝謝。
QTextEdit.toPlainText()
返回QString
對象,這始終是一個unicode字符串(見documentation)。
的QString
類提供的功能toLatin1()
,toAscii()
和toUtf8()
,它允許你字符串Unicode字符轉換成一個8位的字符串,可以進一步處理。所以Qt處理編碼&爲你解碼字符串。
如果要從給定的字節串創建QString實例,可以使用函數fromAscii()
,fromLatin1()
或fromUtf8()
。
Qt中的所有控件都爲16位字符啓用。這意味着QTextEdit
的內容是Unicode(或UTF-32/UCS-4)(另請參閱http://developer.nokia.com/Community/Discussion/showthread.php/215203-how-to-correctly-display-Unicodes-in-QPlainTextEdit)。
當獲取QTextEdit
控件的內容(通過plainText()
)時,將返回包含Unicode的QString
。
從那裏,你可以轉換爲其他格式,只要你喜歡:toUTF8()
,toUCS4()
,...