有人知道这个吗?
比如我有个class Test.java
运行的时候我这样写 java Test < input.txt
这个是怎么把input的内容放进程序的?我在程序里面应该用什么方法来提取这些内容?用过BufferedReader+System.in了,都不行,或者是我对"<" 这个命令理解错了。
谢谢

解决方案 »

  1.   

    呵呵,你这个需要将input.txt当成字符串,然后在main方法里再使用它创建BufferedReader对象.读取文件内容
      

  2.   

    本帖最后由 AWUSOFT 于 2011-04-13 00:06:21 编辑
      

  3.   

    谢谢AWUSOFT,但是我不是要直接拿文件名字,然后读取文件内容,而是用了 < 符号之后提取,java 命令可以在运行时利用 "< , >" 来做输入输出,比如说 java Test > output.txt, 这个就直接把程序的所有输出结果 存到output.txt里面了, 不会再命令窗口显示任何输出,我的问题是
    如果运行命令是 java Test < input.txt 这个我在程序里面怎么写才能拿到 “<” 提供的内容?
      

  4.   

    恩,还真没试过这个功能,但是我想这个 > 命令是dos下的命令符吧,java是无法处理它的
      

  5.   

    java -其他选项名 类名 参数列表
    参数列使用空格分开,它们将会被传到main方法的String数组中.
    public class a
    {
    public static void main(String[]atgs)
    {
    System.out.println("a.class output:"+atgs[0]);
    }
    }java a "参数值....."程序中就会输出这个: a.class output:参数值.....
      

  6.   

     < 这个符号在Java中貌似应该不能使用吧,我记得这只是linux下编程的技巧啊
      

  7.   

    AWUSOFT 你说的是利用 命令行+空格+文件名,来读取内容,这个我明白,不过我是在做一个project,user指定要在命令行内 输入 < 符号直接把文件内容输入到程序。这个我解决了,之前是我把BufferedReader 放进了一个0循环的for loop,所以没出结果,现在好了。< 这个符号的存在,main 方法里面参数args是永远 为0长度,不管后面放什么都是0,因为<符号是已经把 后面文件内容传递给程序了,是个输入命令。在程序直接直接捕捉就行。Anyway,还是感谢AWUSOFT。
      

  8.   

    也感谢huan0911612504的回复,<> 这两个符号在java都能用的。
      

  9.   


    public class a
    {
    public static void main(String[]atgs)
    {
    System.out.println("a.class output:");
    try{
    int b = System.in.read();
    while(b!=-1)
    {
    System.out.println((char)b);
    b = System.in.read();
    }
    }catch(Exception e)
    {
    }
    }
    }