C++中有freopen()函数用来从文件汇中输入测试数组,Java用下面的方式达到这个目的
1 public class Main {
2 static private final String INPUT = "C:/input.txt";
3 static private final String OUTPUT = "C:/output.txt";
4
5 public static void main(String args[]) {
6 // open I/O files
7 FileInputStream instream = null;
8 PrintStream outstream = null;
9
10 try {
11 instream = new FileInputStream(INPUT);
12 outstream = new PrintStream(new FileOutputStream(OUTPUT));
13 System.setIn(instream);
14 System.setOut(outstream);
15 } catch (Exception e) {
16 System.err.println("Error Occurred.");
17 }
18
19 Scanner in = new Scanner(System.in);
20 for (;in.hasNext();) {
21 int x = in.nextInt();
22 System.out.println(x);
23 }
24
25 System.err.println("done.");
26 return;
27 }
28
29 }
转债自:https://www.cnblogs.com/duanguyuan/p/3365843.html
或者下面中方式:
1 public static void main(String[] args) throws Exception {
2 // 输入重定向
3 BufferedInputStream in = new BufferedInputStream(new FileInputStream("std.in"));
4 System.setIn(in);
5 Scanner stdin = new Scanner(System.in);
6 int a = stdin.nextInt();
7 int b = stdin.nextInt();
8 // 输出重定向
9 PrintStream out = new PrintStream(new FileOutputStream("estdout.pc2"));
10 System.setOut(out);
11 System.out.print(a + b);
12 out.close(); // 关闭重定向
13 }
转载自:https://blog.csdn.net/fightforyourdream/article/details/17329671