我制作了一个可以打开文件的python程序,例如 document.docx 。如果文件存在,一切都很好:我用命令
打开它start document.docx
xdg-open document.docx
。 Howewer,我现在想要创建文档(如果它不存在),例如创建一个名为new.docx
的新空文件并在默认程序中打开它。
我的解决方案是存储我想要使用的每种类型的空文件(空的docx,空的odt,空的png,......),以及用户请求的文件是否不存在,程序制作一个以用户输入命名的空文件的副本并打开它。
你认为它们可能是适用于Windows和Ubuntu的解决方案,它不需要为每个使用的扩展存储空文件吗?
编辑:我想在Windows的上下文菜单中创建文件时的行为与您所做的相同,您可以选择许多不同类型的文档
(这是法国人,但你明白了)
答案 0 :(得分:1)
您的原始解决方案(使用所有需要的文件类型的模板)似乎是标准的处理方式,因为Windows和Ubuntu(Nautilus)都是这样做的。
Windows使用Registry和Windows \ ShellNew访问现有模板。 source
[HKEY_CLASSES_ROOT\.docx\ShellNew]
"FileName"="New Microsoft Word Document.docx"
在
%windir%\ShellNew
中使用该名称的文件。
与Ubuntu(Nautilus)一样,但使用〜/ Templates /目录。 source
所以看起来你最强大的解决方案就是坚持你原来做的事情。