打开文件 - 执行功能

时间:2011-03-28 01:23:59

标签: python file wxpython

我想知道是否有人可以就如何为文件提供功能给我一个方向...这有点难以解释,所以我会尽我所能。
假设我有一个应用程序(使用wxPython),让我说我有一个文件。现在,此文件已分配给应用程序打开。所以,我双击该文件,然后打开应用程序。现在我的问题是,必须在文件上写什么,例如,打开一个对话框?所以我们双击该文件,它会在应用程序上打开一个对话框?

PS:我知道我首先要将程序与某种文件类型相关联,然后双击它,但这不是问题。

2 个答案:

答案 0 :(得分:2)

AFAIK大多数平台只使用您单击的文件作为参数调用帮助应用程序,因此您的文件路径将位于sys.argv[1]

答案 1 :(得分:1)

我认为他想要做的是将文件扩展名与他的应用程序相关联,因此当他通过双击打开文件时,它会将文件的内容发送到他的应用程序;在这种情况下,在对话框中显示内容?

如果是这种情况,那么您需要做的第一件事(如果您在Windows上)是为文件扩展创建适当的文件关联。这可以通过注册表完成,当正确设置时,将使用作为第一个参数执行的文件的路径/文件名打开您的应用程序。理想情况下,它与从命令行执行它相同,如:

C:\ your \ application.exe“C:\ The Path \ To \ my.file”

现在如上所述,您需要使用sys.argv来获取传递给应用程序的参数,在这种情况下, C:\ Path \ To \ my.file 将是第一个论点。简单地说,sys.argv是传递给应用程序的参数列表;在这种情况下,第一个条目 sys.argv [0] 将始终是您的应用程序的路径,如上所述, sys.argv [1] < / strong>将是您的自定义文件的路径。

示例:

import sys

myFile = sys.argv[1]
f = file(myFile, "r")
contents = f.read()
f.close()

然后,您就可以将变量 内容 传递给对话框以执行任何操作。