当我使用tkinter的asksaveasfile
函数时,它无意中打开文件夹而不是保存一个恰好被命名为该文件夹的文件。
给出示例代码:
import tkinter.tkFileDialog
f = tkFileDialog.asksaveasfile(mode='w', defaultextension=".txt")
一个文件结构,例如:
Desktop (initial directory)
| ----------> example (folder)
其中Desktop是初始目录,示例是该目录中的文件夹
如果您尝试输入文本“example”,则不会创建该文件,而是打开名为example的文件夹。
有什么想法吗?
答案 0 :(得分:1)
filedialog的默认和预期行为是能够粘贴访问特定文件夹的路径,因此这将与您想要实现的目标冲突。
一个选项可能是在默认文件名中提供扩展名:
f = tkFileDialog.asksaveasfile(mode='w',
initialfile='.txt', # or even a default name
defaultextension='.txt')