用C++ 写了一个控制台程序:写一个JAVA类,调用这段编译后的可执行文件,并进行输入输出,可以启动这个控制台程序,不过CPU 是100%,不能得到预期结果。java程序也不能正常结束!请高手帮忙!谢过!!
C++ 代码:
#include "iostream.h"int main(int argc, char* argv[])
{
char s1[100];
do{
cin>>s1;
if (s1[0] == 'q')
break;
cout<<"scan : "<<s1<<endl;
}while(1);
return 0;
}
--------------------------
java 代码:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;public class Rtm { public static void main(String args[]) {
try {
System.out.println("boot");
String command = "c:\\KAV.exe notepad";// c:\\KAV.exe
Process child = Runtime.getRuntime().exec(command);
InputStream is = child.getInputStream();
OutputStream os = child.getOutputStream();
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(os));
BufferedReader br = new BufferedReader(new InputStreamReader(is));

bw.write("scan\r\n");
String inline = null;
while(null!=(inline=br.readLine()))
System.out.println(inline);
bw.write("q\r\n");
child.destroy();
System.out.println("end");
} catch (IOException e) {
e.printStackTrace();
}
}
}