java中如何用readLine()读取最后一行并输出
BufferedReaderin=newBufferedReader(newInputStreamReader(System.in));while((line=brCle...
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
while ((line = brCleanUp.readLine ()) != null)
{
System.out.println ("[输出] " + line );
}
程序中的System.in 输入了几个变量的值传递到别处,然后经过别处的运算,最后输出运算后的结果,console运行后显示如下:
[输出] 1
[输出] -3
[输出] 4
[输出] A3
现在我只需要输出最后一行[输出] A3,该如何去做呢。
按照你们的方法,zeus3288运行后什么都输不出来,ZoviKoo为“[输出] null”,不知道是什么原因,发一下前面的代码,大家帮我看看:
Process process = Runtime.getRuntime().exec ("aa.exe");
stdin = process.getOutputStream ();
stderr = process.getErrorStream ();
stdout = process.getInputStream ();
int n = 3;
stdin.flush(); //把缓冲区里的东西强行写入输出流
int X= -1;
stdin.write((X + " " + "\n").getBytes() );
stdin.flush();
X= 1;
stdin.write((X + " " + "\n").getBytes() );
stdin.flush();
stdin.close();
BufferedReader brCleanUp = new BufferedReader(new InputStreamReader(System.in));
....
其中aa.exe为一个编译后的C语言程序,C语言中有需要scanf的变量n和X,现在我在java中导入这个程序,并传递n和X的实际参数,然后通过C语言中运算后在java中输出结果为
[输出] 1
[输出] -3
[输出] A3
这三行都是C语言中的运算后的输出结果,现在只需要输出最后一 展开
while ((line = brCleanUp.readLine ()) != null)
{
System.out.println ("[输出] " + line );
}
程序中的System.in 输入了几个变量的值传递到别处,然后经过别处的运算,最后输出运算后的结果,console运行后显示如下:
[输出] 1
[输出] -3
[输出] 4
[输出] A3
现在我只需要输出最后一行[输出] A3,该如何去做呢。
按照你们的方法,zeus3288运行后什么都输不出来,ZoviKoo为“[输出] null”,不知道是什么原因,发一下前面的代码,大家帮我看看:
Process process = Runtime.getRuntime().exec ("aa.exe");
stdin = process.getOutputStream ();
stderr = process.getErrorStream ();
stdout = process.getInputStream ();
int n = 3;
stdin.flush(); //把缓冲区里的东西强行写入输出流
int X= -1;
stdin.write((X + " " + "\n").getBytes() );
stdin.flush();
X= 1;
stdin.write((X + " " + "\n").getBytes() );
stdin.flush();
stdin.close();
BufferedReader brCleanUp = new BufferedReader(new InputStreamReader(System.in));
....
其中aa.exe为一个编译后的C语言程序,C语言中有需要scanf的变量n和X,现在我在java中导入这个程序,并传递n和X的实际参数,然后通过C语言中运算后在java中输出结果为
[输出] 1
[输出] -3
[输出] A3
这三行都是C语言中的运算后的输出结果,现在只需要输出最后一 展开
展开全部
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
while ((line = brCleanUp.readLine ()) != null)
{
}
System.out.println ("[输出] " + line );
当while循环readLine出所有行结束时,最后一行的值就是line,这时候你输出line就可以了~
while循环的这个过程是必须的,虽然while内部并未执行任何操作。
while ((line = brCleanUp.readLine ()) != null)
{
}
System.out.println ("[输出] " + line );
当while循环readLine出所有行结束时,最后一行的值就是line,这时候你输出line就可以了~
while循环的这个过程是必须的,虽然while内部并未执行任何操作。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String strLastLine = null;
while ((line = brCleanUp.readLine ()) != null)
{
strLastLine = line;
}
System.out.println ("[输出] " + strLastLine );
String strLastLine = null;
while ((line = brCleanUp.readLine ()) != null)
{
strLastLine = line;
}
System.out.println ("[输出] " + strLastLine );
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
String line=null;
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
while ((line = brCleanUp.readLine ()) != null)
{
}
if(line!=null)
System.out.println ("[输出] " + line );
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
while ((line = brCleanUp.readLine ()) != null)
{
}
if(line!=null)
System.out.println ("[输出] " + line );
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把结果放在list里 只显示最后一个就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询