pdf2swf转换关于p.waitFor();执行的问题

发布于 2021-11-16 05:02:47 字数 1400 浏览 768 评论 10

 我在写一个关于仿百度、豆丁网在线文档阅读的功能时,遇到一个棘手的问题,不知道怎么解决啊,在这分享下:我用的软件:myeclipse+mysql+tomcat6服务器;关于pdf转换为swf文件时,p.waitFor();语句执行导致不能生成swf文件,但我发现当我把tomcat服务器关闭后文件就生成了,这个把问题怎么解决啊?在服务器不关的情况下也要生成swf文件。下面是转换的代码,问下能否有好的解决方案啊?

//转换成swf文件

r = Runtime.getRuntime();

if(!swfFile.exists()){

if(pdfFile.exists()) {

System.out.println("--------------执行到这里---1");

try {

Process p = r.exec("D:/Program Files/SWFTools/pdf2swf.exe " + pdfFile.getPath() + " -o " + swfFile.getPath() + " -T 9");

System.out.println("--------------执行到这里---2");

p.waitFor();

System.out.println("--------------执行到这里---3");

swfFile.createNewFile();

System.out.println("--------------执行到这里---4");

System.out.println("第三步:转换为SWF格式 路径:" + swfFile.getPath());

System.out.println("第四步:转换为SWF格式mingcheng:" + swfFile.getName());

if(pdfFile.exists()) {

pdfFile.delete();

}

} catch (Exception e) {

e.printStackTrace();

try {

throw e;

} catch (Exception e1) {

e1.printStackTrace();

}

}

} else {

System.out.println("PDF文件不存在,无法转换");

}

} else {

System.out.println("已经转为SWF文件,无需再次转换");

if(pdfFile.exists()) {

pdfFile.delete();

}

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(10

皇甫轩 2021-11-16 19:10:40

param是原文件名,orginName是保存后文件名,savePath是保存路径,代码中有前置处理,不用太在意。

自此以后,行同陌路 2021-11-16 19:10:23

pdf2swf不带路径   pdf2swf最好是放到环境变量里

归属感 2021-11-16 19:08:45

pdf2swf不带路径   pdf2swf最好是放到环境变量里

一笔一画续写前缘 2021-11-16 19:07:23

这段代码是我原来项目中的代码,目前还在使用中,你直接命令行执行试下,不要带路径。

对了,我忘记放命令行格式:

public static final String PDF2SWF = "pdf2swf.exe -o "%?%" -s flashversion=9 "";

裸钻 2021-11-16 18:58:15

这段代码是我原来项目中的代码,目前还在使用中,你直接命令行执行试下,不要带路径。

对了,我忘记放命令行格式:

public static final String PDF2SWF = "pdf2swf.exe -o "%?%" -s flashversion=9 "";

奢华的一滴泪 2021-11-16 18:54:32

这段代码是我原来项目中的代码,目前还在使用中,你直接命令行执行试下,不要带路径。

对了,我忘记放命令行格式:

public static final String PDF2SWF = "pdf2swf.exe -o "%?%" -s flashversion=9 "";

秋意浓 2021-11-16 16:01:04

这跟swftools没关系,建议看下java api里的Process wariFor()方法是干嘛用的。

想在java里监控系统shell需要多线程来处理

悟红尘 2021-11-16 06:27:59

这跟swftools没关系,建议看下java api里的Process wariFor()方法是干嘛用的。

想在java里监控系统shell需要多线程来处理

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文