我认为正确的术语是“管道”,但我希望有人会证实/纠正这一点。
基本上,我想设置我的程序在绘图程序或文本编辑器中打开一个文件进行查看(所以我不必在命令行中输入它)。
有这样做的好方法吗?到目前为止我只打开和关闭了文件,所以我不知道从哪个开始在程序中打开它们。
答案 0 :(得分:3)
听起来你想要Process课程。
进程p = Runtime.getRuntime()。exec(“notepad C:\ boo.txt”);
这将在一个进程中启动程序“notepad”,为其提供参数“C:\ boo.txt”(对于此示例,将使用记事本打开该文件)。如果您只想启动程序,那么在完成此操作后即可完成。如果您希望使用命令行输入/输出,则可以使用流程'例如:
BufferedReader stdError = new BufferedReader(new InputStreamReader(p.getErrorStream())); PrintWriter stdOut = new PrintWriter(p.getOutputStream());
记事本示例是特定于Windows的,但无论如何都是一样的。传递给exec()
的字符串将像在计算机上的操作系统命令行中输入一样运行。
答案 1 :(得分:1)
另请参阅AWT的Desktop-Class,它可用于打开与特定文件类型相关联的程序。
答案 2 :(得分:0)
如果要处理java程序中的文件,只需从命令行调用该文件的路径/名称即可。注意,当您执行Java应用程序时:
java MyApp fileName true
这些args作为传递给main方法的参数进入你的应用程序。
class MyApp {
public static void main(String[] args) {
String nameOfFileOrSomething = args[0];
String booleanForSomethingOrAnother = args[1];
}
}
这是你的事吗?