如何访问dashed filename

第一关:boJ9jbbUNNfktd78OOpsqOltutMc3MY1

第二关:CV1DtqXWVFXTvM2F0k09SHz0YwRINYA9

cat <-

第三关:如何访问spaces in this filename 带空格的文件 UmHadQclWmgdLOKQ3YNgjWxGoRMb5luK

cat spaces\ in\ this\ filename

第四关:pIwrPrtPN36QITSp3EQaw936yaFoFgAB

转载于:https://www.cnblogs.com/xiaobaichuangtianxia/p/7929619.html

好的,以下是一个简单的示例代码,它演示了如何在拖放文件到PyQt5界面后,弹出一个新窗口用于设置文件信息,并将文件的存储地址和文件类型保存到SQLite数据库中: ```python import sys import sqlite3 from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QLabel, QLineEdit, QPushButton, QFileDialog class MainWindow(QMainWindow): def __init__(self): super().__init__() # 创建主界面 self.setWindowTitle("文件信息设置") self.setGeometry(100, 100, 400, 300) # 创建文件信息设置窗口 self.file_info_window = FileInfoWindow() # 创建拖放区域 self.drop_zone = DropZone(self) self.drop_zone.setGeometry(50, 50, 300, 200) # 显示主界面 self.show() class DropZone(QWidget): def __init__(self, parent): super().__init__(parent) # 设置拖放区域的样式 self.setStyleSheet(""" background-color: #ccc; border: 2px dashed #aaa; """) # 允许拖放文件到该区域 self.setAcceptDrops(True) def dragEnterEvent(self, event): if event.mimeData().hasUrls(): event.accept() else: event.ignore() def dropEvent(self, event): # 获取拖放的文件列表 files = [u.toLocalFile() for u in event.mimeData().urls()] # 显示文件信息设置窗口,并将文件列表传递给它 self.parent().file_info_window.set_files(files) self.parent().file_info_window.show() class FileInfoWindow(QWidget): def __init__(self): super().__init__() # 创建文件信息设置窗口 self.setWindowTitle("文件信息设置") self.setGeometry(150, 150, 400, 300) # 创建控件 self.filename_label = QLabel("文件名:", self) self.filename_label.setGeometry(50, 50, 80, 30) self.filename_edit = QLineEdit(self) self.filename_edit.setGeometry(130, 50, 180, 30) self.filetype_label = QLabel("文件类型:", self) self.filetype_label.setGeometry(50, 100, 80, 30) self.filetype_edit = QLineEdit(self) self.filetype_edit.setGeometry(130, 100, 180, 30) self.ok_button = QPushButton("确定", self) self.ok_button.setGeometry(150, 180, 100, 30) self.ok_button.clicked.connect(self.save_file_info) # 创建数据库连接 self.conn = sqlite3.connect("file_info.db") self.cursor = self.conn.cursor() def set_files(self, files): # 仅处理第一个文件 self.filename_edit.setText(files[0]) self.filetype_edit.setText(files[0].split(".")[-1]) def save_file_info(self): # 获取文件信息 filename = self.filename_edit.text() filetype = self.filetype_edit.text() # 将文件信息保存到数据库中 self.cursor.execute("INSERT INTO files (filename, filetype) VALUES (?, ?)", (filename, filetype)) self.conn.commit() # 关闭窗口 self.close() if __name__ == '__main__': app = QApplication(sys.argv) window = MainWindow() sys.exit(app.exec_()) ``` 在这个示例代码中,我们创建了一个包含拖放区域和文件信息设置窗口的主界面。当用户将文件拖放到拖放区域时,我们将文件列表传递给文件信息设置窗口,并显示它。用户可以在文件信息设置窗口中设置文件名和文件类型,并单击“确定”按钮将文件信息保存到SQLite数据库中。 请注意,这只是一个简单的示例代码,您需要根据自己的需求进行修改和扩展。同时,您需要先安装sqlite3库,以便能够连接和操作SQLite数据库。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值