2013-06-24 109 views
-1

如何从另一个java程序获取输入?我有一个类生成一个随机图,并将其写入Windows cmd控制台中,其编号为System.out.println();。我想要的是这个其他类读取这个输出并用它来做一些计算。这两个类都工作正常 - 我需要知道的是如何从第一类获得此输出。从windows cmd读取输入

编辑: 我想这个http://pastebin.com/GnsUZVht读取这个http://pastebin.com/cgXMCbgb做的输出将它放回矩阵。

+2

你想读取另一个Java程序的输出或由同一程序中的其他类完成的输出吗?请更好地说明你的问题。 – peshkira

+0

请提供一个例子来说明你想要做什么。你应该包括你期望如何运行你的程序。 –

+0

从Nuno想要将一个程序的结果写入终端的问题来看,这很清楚,第二个程序可以将结果写入终端。 –

回答

2

看看解决方案here

据此,您可以使用Process Builder,这是用于创建操作系统进程

的例子:

ProcessBuilder ps=new ProcessBuilder("java.exe","-version"); 

ps.redirectErrorStream(true); 

Process pr = ps.start(); 

BufferedReader in = new BufferedReader(new 
InputStreamReader(pr.getInputStream())); 
String line; 

while ((line = in.readLine()) != null) { 
    System.out.println(line); 
} 
pr.waitFor(); 
in.close(); 
System.exit(0); 
0

这将是最简单的只具有两个类在同一程序中,然后将这些变量作为自变量存储从所述第一类中的变量产生的数据,然后传递到下一堂课,而不是从控制台打印和阅读。

0

假如你想这样做(例如在Linux bash)的

java -jar one.jar | java -jar two.jar | ... 

代码one.jar会写信给的System.out而代码two.jar然后从读取System.in