0

次の行で Unicode に関連する問題があります。

strToCompare =  str(self.modelProxy.data(cellIndex, Qt.DisplayRole).toString()).lower()

エラーは次のとおりです。

UnicodeEncodeError: 'ascii' コーデックは位置 5 の文字 u'\xe9' をエンコードできません: 序数が範囲外です(128)

これは、Unicode 文字を含む可能性があるデータベースのフィールドからデータが取得されるためです。Unicodeに変換する機能を追加したのに、unicode()まだエラーが出ます。

4

1 に答える 1

0

関数 data() を使用する代わりに、モデルで文字列を取得するだけです。このように、QVariant を String に変換する必要はありません

于 2013-01-07T16:36:48.477 に答える