Java getInputStream()未返回可读信息
我的家庭作业是从java程序中调用一个.jar,但我无法让输入流将结果返回到可读的内容中。以下是我首先做的:Java getInputStream()未返回可读信息,java,Java,我的家庭作业是从java程序中调用一个.jar,但我无法让输入流将结果返回到可读的内容中。以下是我首先做的: InputStream in = proc.getInputStream(); System.out.println(in); 但这不起作用,我发现了一些不同的变化: BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream())); System.out.println(input
InputStream in = proc.getInputStream();
System.out.println(in);
但这不起作用,我发现了一些不同的变化:
BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
System.out.println(input);
但这也不起作用,在两种情况下,它都返回如下内容:java.io。BufferedReader@2ce908. 如何让它返回可读的输出
编辑:这是一个从另一个java程序接收输出的java程序。用户启动的程序称为Translate.java,它接受英语单词,并使用Runtime.getRuntime().exec(“java-jar Dictionary.jar”+)命令将它们作为命令行参数传递。我被告知使用Translate.java中的getInputStream()来接收Dictionary.java程序的输出。流不是文本;它是一种为你读取文件的东西。您必须调用
readLine
:
BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
String s = null;
while ((s = input.readLine()) != null) { // it returns null at the end of the file
System.out.println(s);
}
你得到了那条小溪,但是你在哪里读小溪里的书呢。Add readline()具有通读性