gpt4 book ai didi

java - 从 Java 控制台应用程序公开 macOS Finder 中的文件

转载 作者:太空宇宙 更新时间:2023-11-04 10:23:51 24 4
gpt4 key购买 nike

macOS 上使用 Java 10 Sierra 或 High Sierra,使用 Oracle JDK 或 OpenJDKZulu/Zing JVM,有没有办法让控制台 Java 应用程序可以创建 Finder来到前台并公开特定现有文件的位置?

最佳答案

令人惊讶的简单(这是肯定的,比尝试在 Windows 中执行此操作更简单)。

因此,经过一些初步研究,我偶然发现了 Shell tricks: the OS X open command ,这很重要,因为几乎所有解决方案都建议使用 open -a Finder {file\folder},这并不完全符合我的要求(它会在 Finder 的编辑器中打开文件(我使用文本文件进行测试))

建议使用open -R {文件/文件夹}

下一个任务是尝试弄清楚是否可以从 Java 调用 open,我原以为必须先通过 shell 执行它,但事实证明这不是必需的。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;

public class Test {

public static void main(String[] args) throws IOException, InterruptedException {
String command[] = new String[]{"open", "-R", {your file or folder}};
ProcessBuilder pb = new ProcessBuilder(command);
pb.inhertIO();
pb.redirectErrorStream(true);
Process p = pb.start();
int exitCode = p.waitFor();
System.out.println(exitCode);
}

}

我在文件和文件夹上测试了这一点

我还测试了 Desktop.getDesktop().browse 但没有得到与上面完全相同的结果(更像 open -a Finder {file/folder})

关于java - 从 Java 控制台应用程序公开 macOS Finder 中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50779767/

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