有没有办法在不使用QFileDialog.getOpenFileName
参数的情况下打开文件?问题是,我有一些按钮,点击它们后,会弹出一个记事本,你可以在记事本中输入任何东西。然后,您可以将您在记事本中写下的任何内容保存为文本文件。我想要做的是,如果我再次单击该按钮,我将重新打开我之前通过记事本编辑的文件,并可以继续键入我离开的位置。但是,我不想使用getOpenFileName
。是否可以在不使用此功能的情况下打开文件?下面是我的尝试,但我的if语句一直在评估是假的。如果有人能提供帮助,那就太好了。谢谢!
#Testing if the file already exists
if(os.path.exists("~/Desktop/" +self.fileName + ".txt")):
f = open(self.fileName + ".txt", 'r')
filedata = f.read()
self.text.setText(filedata)
f.close()
#Opens a new notepad if there wasn't a previous fileconstructed
else:
self.textBox = textBoxWindow(self.fileName)
self.textBox.show()
答案 0 :(得分:0)
如果你在Winsows上(你说的是记事本),你可以使用subprocess
模块打开当前与文件类型相关的任何程序的任何文件,如下所示: / p>
import subprocess
self.filename = r'C:\test.txt'
subprocess.call(['start', self.filename], shell=True)
但是shell=True
参数有点危险,尤其是文件名作为输入。
您也可以使用webbrowser
模块,但不支持使用它我猜:
import webbrowser
webbrowser.open(self.filename)