PyQt4で2つのエントリを持つPython 2 GUIアプリケーションを作成しました。最初のファイル名はファイル名を取り、2番目のファイル名はファイルに書き込むためのテキストを取ります。アラビア語のテキストをPyQt4からUTF-8に変換する方法
私はそれらの両方でアラビア語のテキストを入力したいので、私は、この関数を書いた:
def makefile(self):
self.name_file=str(self.lineEdit.text()).decode("utf-8")
self.string=str(self.lineEdit_2.text()).decode("utf-8")
file=open(self.name_file,"w")
file.write(self.string)
file.close()
私は英語の文字を入力すると、それが正常に動作しますが、私はアラビア語を入力したとき、私は次のエラーを取得する:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)
を書くべきですか?どのバージョンのPythonを使用していますか? 3を望むだろうが、すべての文字列がデフォルトでユニコードだったと思ったので、確信が持てません – konkked
'str(self.lineEdit.text())。decode(" utf-8 ")'が間違っています。 'str()'は通常、デバッグ目的で何かを表現するためのものです。あなたがそれをデコードする必要があるのはなぜですか? – syntonym