使用 Java 调用批量写入文件

Write a file by batch using Java call

我正在开发一个应用程序,我需要使用下面的批处理命令写入一个文件:

[example.bat]

date >> a.txt

当我 运行 这个批处理文件通常会在我当前的工作目录中创建一个文件 a.txt,但是当我从 Java 应用程序调用它时,它既不会创建文件 a.txt也不写。

[Main.java]

File startbat = new File("./example.bat");
Desktop.getDesktop().open(startbat);

当我 运行 我的 Java 文件时,它会执行批处理文件,但没有写入操作正在完成,但应该完成。

探索后我发现 Java 机器不允许从本机进程写入第三个文件。这意味着您不能通过 Java 机器调用的进程写入文件。但是,如果您想执行上述任务,您可能会喜欢:

Process p = Runtime.getRuntime().exec("*batcommand*");
Scanner sa = new Scanner(p.getInputStream());
String output = sa.nextLine();

感谢您宝贵的回答。