【问题标题】:Making a default reader to open all files of a fixed extention (e.g. *.txt)设置默认阅读器以打开所有固定扩展名的文件(例如 *.txt)
【发布时间】:2012-12-05 15:20:26
【问题描述】:

我正在编写一个 JAVA 阅读器来读取 .txt 文件作为记事本的替代品。现在,问题是,我想将该程序设置为打开所有 .txt 文件的默认程序。现在,程序将如何区分我通过程序打开的文件?我不想制作一个首先打开 JFileChooser 并让用户通过 JFileChooser 打开该文件的程序。我只想用java做一个记事本,它会像记事本一样打开.txt文件。当我点击一个文件时,例如 *.txt,它将使用我的程序打开该文件,我的程序将显示该文件的字符。

【问题讨论】:

  • 这应该只是让你的程序接受一个文件名作为它的第一个参数。

标签: java file filereader default-programs


【解决方案1】:

我没有测试它,但我希望如果您从源创建一个 Jar 文件,并让您的操作系统指向该文件以打开 *.txt 文件,那么要打开的文件的绝对路径将在您的主要“String [] args”中。你能快速测试一下吗?

【讨论】:

  • 我不知道如何在JAVA中使用命令行参数,如果它像C++,我现在正在测试它!
  • 命令行参数只是public static void main(String [] args) 中的这些“参数” :)
  • 无法将可执行 Jar 文件设置为在 Windows 7 中为默认程序打开文件?它说它不是一个有效的 Win32 应用程序......请帮帮我!
  • 查看Smalltown2k的最后一条评论,把它变成一个exe文件
  • 这是一个非常小的程序,我用 JAVA 编写来进行实验 (paste.ubuntu.com/1412703),然后通过 netbeans 编译并运行。然后我打开了一个随机扩展名的文件,并将默认程序设置为从作为程序的项目中打开该文件到可执行 JAR 文件,然后当我尝试打开该文件时,它显示错误不是有效的 Win32 应用程序。怎么办?
【解决方案2】:

当然,这里的问题是让 Windows/OSX/Linux 将您的程序注册为默认值,这可能必须在您的程序范围之外发生?

您可以在 Windows/Mac 上执行“打开方式...”(在 Linux 上不确定),然后改用您的程序。然后,您的程序可以将文件名作为命令行参数并按照您的意愿使用它。

【讨论】:

  • 命令行参数!我就知道!! :D 它在 JAVA 中表现得像 C++ 吗?如果相同,那么问题就结束了!
  • 无法将可执行 Jar 文件设置为在 Windows 7 中为默认程序打开文件?它说它不是一个有效的 Win32 应用程序?
  • 您应该能够找到一个程序将其转换为可以工作的 EXE 文件。它不是开箱即用的 Java,因为它会打破“一次编写,随处运行”的范式。在这里试试:stackoverflow.com/questions/147181/…
猜你喜欢
  • 1970-01-01
  • 2013-11-20
  • 1970-01-01
  • 1970-01-01
  • 2012-01-09
  • 2020-03-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多