【发布时间】:2019-01-13 21:28:36
【问题描述】:
我想知道main方法的参数String[] args和用指定程序打开文件的可能性之间是否有任何联系。
考虑到我写了一个简单的程序,它记下args 的每个字符串,然后用这个程序打开了一些文件(我使用的是 windows)。
这就是发生的事情:
无论我用我的程序打开什么样的文件(右键单击 -> 打开方式...),args只包含一个字符串,它是文件的完整路径。
当我自己运行程序时,args 的长度为 0。
现在我的问题是:args 中是否可能包含任何其他字符串,或者以下代码是否总是可以毫无疑问地工作?
(我想在 Windows 上使用它,而不是像 java MyProgram 1 2 3 "test" 那样玩弄它
public static void main(String[] args) {
initProgram();
if (args.length != 0) { //file opened with program
loadFile(new File(args[0]));
}
}
感谢您的回答,请耐心等待我的英语。
【问题讨论】:
-
打开一个文件时只会收到一个参数,尝试将两个文件拖到一个Jar文件的顶部看它是否收到很多?
-
如果您尝试一次启动多个文件(不是作为参数的列表)窗口将为每个文件启动一个新的程序实例,您应该查看是否可以在同一个文件上监听第二个文件进程(就像 GIMP 对许多文件所做的那样)
标签: java windows file startup main-method