怎样在java类中调用带参数的可执行文件(比如:.exe,.sh等等)?
怎样在java类中调用带参数的可执行文件(比如:.exe,.dat,.sh等等)?再说的抽象一些就是java如何去掉C,C++......程序...
怎样在java类中调用带参数的可执行文件(比如:.exe,.dat,.sh等等)?
再说的抽象一些就是java如何去掉C,C++......程序 展开
再说的抽象一些就是java如何去掉C,C++......程序 展开
1个回答
推荐于2018-03-30
展开全部
比如调用exe程序"java -version":
String[] cmd = new String[] {"java", "-version"};
Process process = Runtime.getRuntime().exec(cmd);
BufferedReader r = new BufferedReader(new InputStreamReader(process.getErrorStream()));
String l = null;
while((l = r.readLine()) != null) {
System.out.println(l);
}
Process有两个流可以读取外部程序的标准输出(就是运行结果啦),一个是getInputStream,一个是getErrorStream。
如果要调用C或C++动态链接库中的函数的话,就要复杂一些,要用到JNI了。
String[] cmd = new String[] {"java", "-version"};
Process process = Runtime.getRuntime().exec(cmd);
BufferedReader r = new BufferedReader(new InputStreamReader(process.getErrorStream()));
String l = null;
while((l = r.readLine()) != null) {
System.out.println(l);
}
Process有两个流可以读取外部程序的标准输出(就是运行结果啦),一个是getInputStream,一个是getErrorStream。
如果要调用C或C++动态链接库中的函数的话,就要复杂一些,要用到JNI了。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询