test.java
class test
{
public static void main(String args[])
{
System.out.print("aaaaa");
System.out.print("bbbbb");
System.out.print("ccccc");
System.out.print("\n");
.......... //一系列的print与println的交替无序使用
System.out.println("aaaaa");
System.out.println("bbbbb");
System.out.println("ccccc");
}
}
test1.java
import java.io.*;
public class test1
{
public static void main(String[] args)
{
Process p=null;
Runtime run = Runtime.getRuntime();
String cmd;
try
{
cmd="cd F:\\java";
run.exec("cmd /c "+cmd);
cmd="javac test.java";
p = run.exec("cmd /c "+cmd);
try
{
p.waitFor();
}
catch(InterruptedException e1){}
p = run.exec("cmd /c "+"java test");
InputStreamReader ir=new InputStreamReader(p.getInputStream());
LineNumberReader input = new LineNumberReader (ir);
String all="";
String line;
while((line = input.readLine ()) != null)
{
all=all+line; //这里有问题,无法实现与子进程一样的格式
}
System.out.println(all);
}
catch(IOException e)
{}
}
}怎样才能让父进程的输出跟子进程的输出一样
class test
{
public static void main(String args[])
{
System.out.print("aaaaa");
System.out.print("bbbbb");
System.out.print("ccccc");
System.out.print("\n");
.......... //一系列的print与println的交替无序使用
System.out.println("aaaaa");
System.out.println("bbbbb");
System.out.println("ccccc");
}
}
test1.java
import java.io.*;
public class test1
{
public static void main(String[] args)
{
Process p=null;
Runtime run = Runtime.getRuntime();
String cmd;
try
{
cmd="cd F:\\java";
run.exec("cmd /c "+cmd);
cmd="javac test.java";
p = run.exec("cmd /c "+cmd);
try
{
p.waitFor();
}
catch(InterruptedException e1){}
p = run.exec("cmd /c "+"java test");
InputStreamReader ir=new InputStreamReader(p.getInputStream());
LineNumberReader input = new LineNumberReader (ir);
String all="";
String line;
while((line = input.readLine ()) != null)
{
all=all+line; //这里有问题,无法实现与子进程一样的格式
}
System.out.println(all);
}
catch(IOException e)
{}
}
}怎样才能让父进程的输出跟子进程的输出一样
读取文本行。可认为行是由换行符('\n')、回车符('\r')或回车后面紧跟换行符中的任何一个终止的。 覆盖:
类 BufferedReader 中的 readLine
返回:
包含行的内容且不包括任何行结束符的字符串,如果已到达流的末尾,则返回 null
抛出:
IOException - 如果发生 I/O 错误