【问题标题】:Associate files with specific extension to my own application in Python在 Python 中将具有特定扩展名的文件关联到我自己的应用程序
【发布时间】:2011-05-12 06:20:38
【问题描述】:

我创建了一个应用程序。它使用一些数据库文件在 wxpython 框架中显示其内容。 让我们假设数据库文件扩展名为 .xyz。当我双击一个 .xyz 文件时,我想在我的应用程序中打开该文件并在我的应用程序中调用一个函数来处理它。我如何在 Python 和 Windows 中做到这一点。

提前致谢。

【问题讨论】:

  • 我认为win32会在这方面发挥作用,也许它也有一个环境变量......
  • 是否有任何解决方案可以修改文件关联,使其可以在 python 中跨平台(windows、linux、os-x)

标签: python windows wxpython


【解决方案1】:

与Python本身无关,是Windows配置。您必须为应用程序分配文件类型。我猜你如何做到这一点的方法取决于 Windows 版本。这是 Vista 的示例:http://windows.microsoft.com/en-US/windows-vista/Change-which-programs-Windows-uses-by-default

【讨论】:

  • 我不仅想将文件与我的应用程序相关联,还想在本地函数中对其进行评估。我的意思是我需要一种将文件传递给我的应用程序的方法。
  • 这就是文件 assoc 将为您做的事情。您的应用程序将以文件作为参数打开,然后您可以处理它
【解决方案2】:

ftypeassoc 将使您能够以独立于版本的方式(合理)。

在您的 python 脚本中,您可能希望使用 argparse 来解析您的命令行参数(您指定给 ftype)。

【讨论】:

  • 我不仅想将文件与我的应用程序相关联,还想在本地函数中对其进行评估。我的意思是我需要一种将文件传递给我的应用程序的方法。
  • @Shansal:ftype 不允许你这样做吗?或者你的意思是你的应用程序已经准备好运行了?谢谢
  • 如果我想将文件路径传递给应用程序,我该怎么办?
  • @Shansal: %1 是 ftype 规范中的文件(及其路径)。您可能想向我们展示您的实际 ftype 规格。谢谢
  • 您能否提供一些代码来使用 argparse 解析任意文件扩展名的打开命令字符串。我会很感激的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-28
  • 1970-01-01
  • 1970-01-01
  • 2011-02-28
  • 2011-02-10
  • 1970-01-01
相关资源
最近更新 更多