首页 > 代码库 > 在运行的时候传递参数
在运行的时候传递参数
有人发帖问下面的程序为什么运行会出错?
The method cypher(InputStream, OutputStream) in the type MyEncoderText is not applicable for the arguments (FileInputStream, FileOutputStream)
package package1; import java.io.*; public class MyEncoderText { public static void main(String[] args) throws Exception { String path0 = args[0]; String path1 = args[1]; FileInputStream in = new FileInputStream(path0); FileOutputStream out = new FileOutputStream(path1); cypher(in, out); System.out.println("结束"); out.close(); } private static void cypher(InputStream inp, OutputStream oup) throws Exception { int len = -1; System.out.println("0: " + len); while ((len = inp.read()) != -1) { System.out.println("1: " + len); oup.write(len);// ^ 102 ^ 91 System.out.println("2: " + len); } System.out.println("3: " + oup); } }
然后,我试了一下,好像没有问题啊?
有人建议他把cypher方法的参数改为(FileInputStream inp, FileOutputStream oup),
就这样结束了这个提问。无聊。
还有那个oup.write(len^ 102 ^ 91);
我开始以为是类似二进制移位这样提高效率之类的操作,
结果根本不行!把它注释掉才能真正地执行复制文件的操作,浪费我时间。
不过这个程序倒是提醒了我关于“在运行的时候传递参数”的问题,
写了一个小程序:
public class TestArgs { public static void main(String[] args) { String Arg1 = args[0]; String Arg2 = args[1]; String Arg3 = args[2]; System.out.println(Arg1); System.out.println(Arg2); System.out.println(Arg3); } }
在cmd小黑窗或者Eclipse中,只要以空格隔开传递的参数,
就可以将参数传递给程序。
例如:java TestArgs A B C 这样。
Eclipse就是Run configurations……窗口传,不截图了。
在运行的时候传递参数
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。