Python3中PyQt5簡單實現文件打開及保存
本文主要介紹瞭Python3中PyQt5簡單實現文件打開及保存,分享給大傢,具體如下:
# -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'filemanage.ui' # # Created by: PyQt5 UI code generator 5.12.2 # # WARNING! All changes made in this file will be lost! from PyQt5 import QtCore, QtGui, QtWidgets from PyQt5.QtCore import QFileInfo from PyQt5.QtWidgets import QFileDialog class Ui_Form(object): save_path = '' def setupUi(self, Form): Form.setObjectName("Form") Form.resize(484, 412) self.open_path_text = QtWidgets.QLineEdit(Form) self.open_path_text.setGeometry(QtCore.QRect(40, 20, 331, 20)) self.open_path_text.setObjectName("open_path_text") self.open_path_but = QtWidgets.QPushButton(Form) self.open_path_but.setGeometry(QtCore.QRect(380, 20, 75, 23)) self.open_path_but.setObjectName("open_path_but") self.save_path_but = QtWidgets.QPushButton(Form) self.save_path_but.setGeometry(QtCore.QRect(380, 50, 75, 23)) self.save_path_but.setObjectName("save_path_but") self.save_path_text = QtWidgets.QLineEdit(Form) self.save_path_text.setGeometry(QtCore.QRect(40, 50, 331, 20)) self.save_path_text.setObjectName("save_path_text") self.text_value = QtWidgets.QTextEdit(Form) self.text_value.setGeometry(QtCore.QRect(10, 90, 461, 281)) self.text_value.setObjectName("text_value") self.save_but = QtWidgets.QPushButton(Form) self.save_but.setGeometry(QtCore.QRect(190, 380, 75, 23)) self.save_but.setObjectName("save_but") self.retranslateUi(Form) QtCore.QMetaObject.connectSlotsByName(Form) def retranslateUi(self, Form): _translate = QtCore.QCoreApplication.translate Form.setWindowTitle(_translate("Form", "Form")) self.open_path_text.setPlaceholderText(_translate("Form", "打開地址")) self.open_path_but.setText(_translate("Form", "瀏覽")) self.save_path_but.setText(_translate("Form", "瀏覽")) self.save_path_text.setPlaceholderText(_translate("Form", "保存地址")) self.save_but.setText(_translate("Form", "保存")) self.open_path_but.clicked.connect(self.open_event) self.save_path_but.clicked.connect(self.save_event) self.save_but.clicked.connect(self.save_text) def open_event(self): _translate = QtCore.QCoreApplication.translate directory1 = QFileDialog.getOpenFileName(None, "選擇文件", "H:/") print(directory1) # 打印文件夾路徑 path = directory1[0] self.open_path_text.setText(_translate("Form", path)) if path is not None: with open(file=path, mode='r+', encoding='utf-8') as file: self.text_value.setPlainText(file.read()) def save_event(self): global save_path _translate = QtCore.QCoreApplication.translate fileName2, ok2 = QFileDialog.getSaveFileName(None, "文件保存", "H:/") print(fileName2) # 打印保存文件的全部路徑(包括文件名和後綴名) save_path = fileName2 self.save_path_text.setText(_translate("Form", save_path)) def save_text(self): global save_path if save_path is not None: with open(file=save_path, mode='a+', encoding='utf-8') as file: file.write(self.text_value.toPlainText()) print('已保存!') self.text_value.clear() ''' directory1 = QFileDialog.getExistingDirectory(self, "選擇文件夾", "/") print(directory1) # 打印文件夾路徑 text.setText(_translate("Form", directory1)) fileName, filetype = QFileDialog.getOpenFileName(self, "選擇文件", "/", "All Files (*);;Text Files (*.txt)") print(fileName, filetype) # 打印文件全部路徑(包括文件名和後綴名)和文件類型 print(fileName) # 打印文件全部路徑(包括文件名和後綴名) text.setText(_translate("Form", fileName)) fileinfo = QFileInfo(fileName) print(fileinfo) # 打印與系統相關的文件信息,包括文件的名字和在文件系統中位置,文件的訪問權限,是否是目錄或符合鏈接,等等。 file_name = fileinfo.fileName() print(file_name) # 打印文件名和後綴名 file_suffix = fileinfo.suffix() print(file_suffix) # 打印文件後綴名 file_path = fileinfo.absolutePath() print(file_path) # 打印文件絕對路徑(不包括文件名和後綴名) files, ok1 = QFileDialog.getOpenFileNames(self, "多文件選擇", "/", "所有文件 (*);;文本文件 (*.txt)") print(files, ok1) # 打印所選文件全部路徑(包括文件名和後綴名)和文件類型 fileName2, ok2 = QFileDialog.getSaveFileName(self, "文件保存", "/", "圖片文件 (*.png);;(*.jpeg)") print(fileName2) # 打印保存文件的全部路徑(包括文件名和後綴名) ''' if __name__ == "__main__": import sys app = QtWidgets.QApplication(sys.argv) widget = QtWidgets.QWidget() ui = Ui_Form() ui.setupUi(widget) widget.show() sys.exit(app.exec_())
到此這篇關於Python3中PyQt5簡單實現文件打開及保存的文章就介紹到這瞭,更多相關PyQt5 文件打開保存內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- PyQt5按下按鍵選擇文件夾並顯示的實現
- pycharm配置QtDesigner的超詳細方法
- 使用pyQT5顯示網頁的實現步驟
- 基於Python+Pyqt5開發一個應用程序
- Python實現上課點名器系統