在Java程序中,如果需要输入大量的数值,那么从键盘上输入是非常繁琐的事。可以将这些数据用空格隔开,保存在一个名为input.txt的文本文件中,然后使用Java输入和输出重定向。例如需要循环求和计算,新建一个input.txt的文本文件(数据以0结尾,因为下面的求和运算程序是以0作为程序终止求和的条件),文件中存入数据1 5 7 9 13 16 17 15 0。求和运算的Java程序名为Sumdata.java,则重定向过程如下:
①编译Java程序:javac Sumdata.java
②输入重定向:java Sumdata < input.txt
③得到求和结果,而不再需要从键盘输入数据。
类似地,还有输出重定向,输出重定向将输出发送给文件,而不是将它们显示在控制台上。输出重定向的命令为:java ClassName > output.txt。还可以在同一命令中同时使用输入重定向和输出重定向。例如,从文件input.txt中获取输入,并将输出发送给文件output.txt:java Sumdata < input.txt > output.txt。
代码:
输入重定向:
import java.util.Scanner;
public class InputRedirct{
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String in ;
for(int i = 0; i < 5; i ++){
in = input.next();
System.out.print(in + " ");
}
}
}
![](https://i-blog.csdnimg.cn/blog_migrate/1efc34f4cb15a76c1268226f4fa61392.png)
输出重定向:
import java.util.Scanner;
public class OutputRedirct{
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
String str;
str = cin.nextLine();
System.out.println(str);
}
}
![](https://i-blog.csdnimg.cn/blog_migrate/6da18a6608a5d978760e122da29e5613.png)