利用Apache commons exec 实现指定应用打开对应文件
发布时间:2020-05-25 14:00:39 所属栏目:Java 来源:互联网
导读:利用Apache commons exec 实现指定应用打开对应文件
|
下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。 脚本之家小编现在分享给大家,也给大家做个参考。 在实际工作中,我们有时候需要指定某一个应用,打开某一个文件。比如用播放器打开一个MP3音乐文件,用记事本打开一个文本文件。不过有的应用需要一些额外的参数,在具体使用的时候要注意。package test.ffm83.commons.exec;
import org.apache.commons.exec.CommandLine;
importorg.apache.commons.exec.DefaultExecutor;
importorg.apache.commons.exec.ExecuteWatchdog;
importorg.apache.commons.exec.PumpStreamHandler;
importorg.apache.commons.io.output.ByteArrayOutputStream;
/**
* 通过commonsexec指定某一个应用打开某一个文件,比如用写字本打开txt文件
*@author 范芳铭
*/
public class EasyExecFile {
publicstatic void main(String[] args) {
EasyExecFileexec = new EasyExecFile();
exec.notepadReadFile("d:/ffm83/ffm83.txt");
}
publicvoid notepadReadFile(String filePath) {
Stringcommand = "notepad.exe " + filePath;
try{
ByteArrayOutputStreamoutputStream = new ByteArrayOutputStream();
ByteArrayOutputStreamerrorStream = new ByteArrayOutputStream();
//命令行处理
CommandLinecommandline = CommandLine.parse(command);
//进行执行体
DefaultExecutorexec = new DefaultExecutor();
exec.setExitValues(null);
//利用监视狗来设置超时
ExecuteWatchdogwatchdog = new ExecuteWatchdog(60000);
exec.setWatchdog(watchdog);
PumpStreamHandlerstreamHandler = new PumpStreamHandler(
outputStream,errorStream);
exec.setStreamHandler(streamHandler);
exec.execute(commandline);//执行
Stringout = outputStream.toString("gbk");
Stringerror = errorStream.toString("gbk");
System.out.println(out);
System.err.println(error);
}catch (Exception e) {
e.printStackTrace();
}
}
}
运行之后,打开了对应的txt文件。将文件关闭之后,进程结束。 转自:http://blog.csdn.net/ffm83/article/details/42266595
以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。 如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
