簡體   English   中英

pyqt5 QTextEdit Windows 10 ASCII 符號

[英]pyqt5 QTextEdit Windows 10 ASCII symbols

我使用 PyQt5 和 QTextEdit 小部件。 我想從文件中獲取純文本並將其顯示在 QTextEdit 中。 這是我在文本文件中的內容

在此處輸入圖片說明

這就是我初始化 QTextEdit 的方式

self.info_text_edit.setPalette(palette)
font = QtGui.QFont()
font.setFamily("Courier")
font.setPointSize(10)
font.setStyleStrategy(QtGui.QFont.NoAntialias)
self.info_text_edit.setFont(font)
self.info_text_edit.setLineWrapMode(QtWidgets.QTextEdit.WidgetWidth)
self.info_text_edit.setReadOnly(True)

然后附加一個文本我只是做

self.info_text_edit.append(str(msg))

在 Linux 上使用這種方法 - 一切正常。 但這就是我在 Windows 上看到的結果

在此處輸入圖片說明

編碼\\解碼有錯誤..

當我將msg寫入文件時,我應該執行以下操作:

import platform
if platform.system() == "Linux":
    msg = str(msg)
elif platform.system() == "Windows":
    msg = str(msg).encode("utf-8").decode('cp1251')

然后當我從文件中讀取msg ,我應該這樣做:

import platform
if platform.system() == "Linux":
    self.info_text_edit.append(str(msg))
elif platform.system() == "Windows":
    self.info_text_edit.append(str(msg).encode('cp1251').decode('utf-8'))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM