java 调用批处理文件或可执行文件
Java调用批处理文件或者使用工具生成的exe可执行文件后怎么通过代码调用,别贴些网上找的答案过来。还有,跟帖的时候请注意,如果没有实际调用过就别说大话.3Q,如果满意后...
Java 调用批处理文件或者 使用 工具生成的exe可执行文件后怎么通过代码调用, 别贴些网上找的答案过来。还有,跟帖的时候请注意, 如果没有实际调用过就别说大话.3Q, 如果满意后可以追加分。谢谢。
我说的是文件...不是比处理命令... 展开
我说的是文件...不是比处理命令... 展开
5个回答
展开全部
用我这种方法就可以用java调用你想调用的程序,不管是exe,还是bat
public class Invoke {
/**
* @param args
*/
public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
Process process = Runtime.getRuntime().exec("c:/cmd.bat");
}
}
.bat里面写入
C:\\hp\\飞秋FeiQ.exe//这个路径就是你应用程序的路径
就可以运行 了,具体思路是相当于你在cmd里面直接输入C:\\hp\\飞秋FeiQ.exe 应该满意 了嘛
public class Invoke {
/**
* @param args
*/
public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
Process process = Runtime.getRuntime().exec("c:/cmd.bat");
}
}
.bat里面写入
C:\\hp\\飞秋FeiQ.exe//这个路径就是你应用程序的路径
就可以运行 了,具体思路是相当于你在cmd里面直接输入C:\\hp\\飞秋FeiQ.exe 应该满意 了嘛
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
String cmd=" cmd /c copy d:\\out1.txt d:\\out2.txt ";
Process p=Runtime.getRuntime().exec(cmd);
p.waitFor();
//注意,这里cmd字串是为了调用批处理,如果调用exe,更简单,就直接换成路径+exe文件就可以了,比如String cmd="notepad.exe";
Process p=Runtime.getRuntime().exec(cmd);
p.waitFor();
//注意,这里cmd字串是为了调用批处理,如果调用exe,更简单,就直接换成路径+exe文件就可以了,比如String cmd="notepad.exe";
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2018-04-12
展开全部
参考语句如下:
Process process = Runtime.getRuntime().exec(".\\p.exe");
process.waitfor( );
在上面的程序中,第一行的“.\\p.exe”是要执行的程序名,Runtime.getRuntime()返回当前应用程序的Runtime对象,该对象的exec()方法指示Java虚拟机创建一个子进程执行指定的可执行程序,并返回与该子进程对应的Process对象实例。通过Process可以控制该子进程的执行或获取该子进程的信息。
第二条语句的目的等待子进程完成再往下执行。
Process process = Runtime.getRuntime().exec(".\\p.exe");
process.waitfor( );
在上面的程序中,第一行的“.\\p.exe”是要执行的程序名,Runtime.getRuntime()返回当前应用程序的Runtime对象,该对象的exec()方法指示Java虚拟机创建一个子进程执行指定的可执行程序,并返回与该子进程对应的Process对象实例。通过Process可以控制该子进程的执行或获取该子进程的信息。
第二条语句的目的等待子进程完成再往下执行。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public class RunBat {
public static void main(String[] args) {
try {
Process process = Runtime.getRuntime().exec("D:\\run.bat");
BufferedReader read = new BufferedReader(new InputStreamReader(process.getInputStream()));
String str = null;
while ((str = read.readLine()) != null) {
System.out.println(str);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
以下是bat的内容
@echo off
call :randomPassword 6 pass1 pass2 pass3
echo %pass1% %pass2% %pass3%
pause
exit
:randomPassword
@echo off
if "%1"=="" goto :eof
if %1 lss 1 goto :eof
set password_len=%1
set return=
set wordset=abcdefghijklmnopqrstuvwxyz0123456789
::循环
:randomPassword1
set /a numof=%random%%%36
call set return=%return%%%wordset:~%numof%,1%%
set /a password_len-=1
if %password_len% gtr 0 goto randomPassword1
::循环
if not "%2"=="" set %2=%return%
shift /2
if not "%2"=="" goto randomPassword
goto :eof
public static void main(String[] args) {
try {
Process process = Runtime.getRuntime().exec("D:\\run.bat");
BufferedReader read = new BufferedReader(new InputStreamReader(process.getInputStream()));
String str = null;
while ((str = read.readLine()) != null) {
System.out.println(str);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
以下是bat的内容
@echo off
call :randomPassword 6 pass1 pass2 pass3
echo %pass1% %pass2% %pass3%
pause
exit
:randomPassword
@echo off
if "%1"=="" goto :eof
if %1 lss 1 goto :eof
set password_len=%1
set return=
set wordset=abcdefghijklmnopqrstuvwxyz0123456789
::循环
:randomPassword1
set /a numof=%random%%%36
call set return=%return%%%wordset:~%numof%,1%%
set /a password_len-=1
if %password_len% gtr 0 goto randomPassword1
::循环
if not "%2"=="" set %2=%return%
shift /2
if not "%2"=="" goto randomPassword
goto :eof
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
java runtime.exec();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询