gpt4 book ai didi

java - 在默认文本编辑器中打开任意文件的平台独立方式

转载 作者:搜寻专家 更新时间:2023-11-01 03:51:43 25 4
gpt4 key购买 nike

我想弄清楚是否有任何平台无关的方法可以使用默认文本编辑器打开文本文件,即使文件没有以 .txt 结尾。我尝试了以下代码,但它会为没有 .txt 扩展名的文件抛出异常。适用于 .txt 文件。

       Desktop dt = Desktop.getDesktop();
try
{
dt.open(fileName);
}
catch(Exception e){
// Catch exception here
}

最佳答案

未经测试,永远不会:

  • 创建一个 symbolic link via nio
    • 使用正确的扩展名
    • 在临时目录中
  • 在符号链接(symbolic link)上调用 Desktop.open()

这在本地对我有用:

public static void main(String... args) throws IOException {
Path source = FileSystems.getDefault().getPath(args[0]);
Path symLink = Files.createTempFile(source.getFileName().toString(), ".txt");
Files.delete(symLink);
Files.createSymbolicLink(symLink, source);
Desktop.getDesktop().open(symLink.toFile());
}

免责声明:除上述冒烟测试外,我没有做过任何研究。

关于java - 在默认文本编辑器中打开任意文件的平台独立方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25558647/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com