在Tkinter中使用askopenfilename打开和读取文件?


当用户想要从目录中打开文件时,首选方法是显示一个弹出窗口,让用户选择要打开的文件。与大多数工具和窗口部件一样,Tkinter 提供了一种方法来打开一个打开文件的对话框、读取文件和保存文件。所有这些功能都是 Python 中 **filedialog** 模块的一部分。与其他窗口部件一样,需要在笔记本中显式导入 filedialog。某些其他模块包含 filedialog,例如 askdirectory、askopenfilename、askopenfile、askopenfilenames、asksaveasfilename 等。

示例

在这个示例中,我们将定义一个函数,使用 **askopenfilename** 打开并读取文件。

我们将定义一个应用程序,其中包含一个打开文件的按钮,并将文件的内容打包到一个 Label 窗口部件中。为了读取文件内容,我们将使用 **read()** 方法以及文件名。

#Import tkinter library
from tkinter import *
from tkinter import ttk
from tkinter import filedialog
#Create an instance of tkinter frame or window
win= Tk()
win.geometry("750x150")
#Define a function to Opening the specific file using filedialog
def open_files():
   path= filedialog.askopenfilename(title="Select a file", filetypes=(("text files","*.txt"),
("all files","*.*")))

   file= open(path,'r')
   txt= file.read()
   label.config(text=txt, font=('Courier 13 bold'))
   file.close()
   button.config(state=DISABLED)
   win.geometry("750x450")
#Create an Empty Label to Read the content of the File
label= Label(win,text="", font=('Courier 13 bold'))
label.pack()
#Create a button for opening files
button=ttk.Button(win, text="Open",command=open_files)
button.pack(pady=30)
win.mainloop()

输出

运行上述代码将显示一个窗口,其中包含一个按钮,单击该按钮将打开一个新窗口来加载和读取文件内容。

单击“打开”按钮以打开窗口中的文件(文本,“*”)。

更新于:2021年4月22日

3K+ 次浏览

启动你的职业生涯

完成课程获得认证

开始
广告