我目前是javaC的新手。我已经安装了JDK并设置了使其工作的路径。我已经完成了几个测试程序并且他们工作了。
假设我有一个名为Read.java的java文件和一个名为Numbers.txt的文本文件
我已将目录设置为文件所在的位置,然后输入命令
javac Read.java
然后
java Read < input.txt
问题是如何设置Read.java程序来接收input.txt文件? 我知道你可以从程序本身读取文件而无需重定向。但我想学习如何使用重定向读取文件。
答案 0 :(得分:0)
Java的主要方法类似于:
public static void main(String[] args)
{
// method body
}
args
是一个用户可以传递给程序的参数数组 - 第一个参数是args[0]
,第二个args[1]
依此类推。
要接收输入文本文件,您可以让用户键入java Read input.txt
。 input.txt
将是第一个参数,因此您可以在主方法中使用args[0]
来访问它。
命令行参数的一个简单示例:
public static void main(String[] args)
{
String input = args[0];
System.out.println("You entered: " + input);
}
您可以通过输入java ProgramName hello
来运行此操作,输出将为You entered hello
。
答案 1 :(得分:0)
您需要阅读标准输入:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class IORedirection {
public static void main(String[] args) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String line;
while((line = in.readLine()) != null){
System.out.println(line);
}
}
}
> echo "hello stdin" | java IORedirection
> hello stdin