查了好多资料,差点就动手翻Java源码了,最后结合一篇文章(忘记出处了),想到了输出流会阻塞进程执行。 Java进程执行有一个输入流,两个输出流(相对于外部程序)。当两个输出流有内容输出,而Java执行程序没有及时清空输出流时就会阻塞进程。
现贴出代码,希望能帮助到有需要的同行:
复制代码 代码如下:/**
* pdf转swf函数
* @param path 输入输出文件路径
* @param inputFileName 输入文件名
* @param outputFileName 输出文件名
* @return File 生成的swf文件
*/
private static File toSwf(String sourceFile, String destFile, String command) {
long beginTime = System.nanoTime();
Runtime rt = Runtime.getRuntime();
try {
Process process = rt.exec(command);
final InputStream isNormal = process.getInputStream();
new Thread(new Runnable() {
public void run() {
BufferedReader br = new BufferedReader(new InputStreamReader(isNormal));
StringBuilder buf = new StringBuilder();
String line = null;
try {
while((line = br.readLine()) != null){
buf.append(line + "\n");
}
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("输出结果为:" + buf);
}
}).start(); // 启动单独的线程来清空process.getInputStream()的缓冲区
InputStream isError = process.getErrorStream();
BufferedReader br2 = new BufferedReader(new InputStreamReader(isError));
StringBuilder buf = new StringBuilder();
String line = null;
while((line = br2.readLine()) != null){
buf.append(line + "\n");
}
System.out.println("错误输出结果为:" + buf);
try {
process.waitFor();
} catch (InterruptedException e) {
e.printStackTrace();
}
} catch (IOException e) {
e.printStackTrace();
}
long endTime = System.nanoTime();
System.out.println("转swf耗时: " + (endTime - beginTime) / 1000000000 + " 秒 " + sourceFile);
return new File(destFile);
}
相关推荐:
什么是seo平台seo教程,什么是 seoseo有何价值 ,论文写作ai助手公众号
ChatGPT回答问题,网页无法线下滚动?解决方案轻松get!,谷歌AI铃声
SEO走动:提升网站流量的关键一步,SEO数据监控宝宝推荐
SEO就业前景如何?打造数字时代的职业新风口,常州武进区水产网站建设
ChatGPT:基于Transformer技术的语言模型,开创人工智能未来,AI独战OK
ChatGPT网页版内容显示不全的原因与解决方案,ai超级绘
SEO关键词的选择步骤:让你的网站在搜索引擎中脱颖而出,ai书法化
ChatGPT点不了?背后的真相与解决方法,ai.520523
怎么用AI写出令人惊叹的文章?轻松搞定写作难题!
优化百:开启数字时代的智能营销新时代,湘潭seo优化报价表
什么是seo网络推广seo顾问,seo网络推广员 ,ai20170119
SEO特点与实施策略:提升网站流量与排名的关键,定西抖音seo价格查询
2024年AI写文章生成器推荐:让创作轻松高效,提升写作水平
ChatGPT的超链接点不开?解决方法一网打尽!,情感ai写作指令是什么
seo需要学会什么编程,seo要会些什么 ,剪映怎样加ai
丹东seo是什么怎么选,丹东spr ,黑发ai图
SEO单页网站:助力企业在线营销的一站式解决方案,湖南视频网站优化方式
SEO优化知识全解析:提升网站排名的秘密武器,ai出错合集
ChatGPT付款被拒?如何应对与解决常见支付问题,掉包ai
seo网站关键字排名优化,网站seo关键词 ,运动ai
SEO快速排名实例:如何通过实战技巧提升网站排名,快速突破流量瓶颈,安徽ai跑步机企业
seo规范是什么意思,seo包括哪些内容 ,AI智能破解
在线AI文章生成:内容创作新革命
ChatGPT您的应用遇到问题,无法正常启动?如何解决并重新体验智能助手的魅力!,男头ai关键词
优化软件:让电脑性能焕然一新,提升效率的秘密武器,大理网站推广招聘信息最新
SEO指:如何通过精准优化提高网站流量和转化率,无锡论坛营销推广要多久
什么是SEO金融,seo是做什么的 ,ai中转程序
SEO薪资这些,你也能月入过万!,天水网站建设公司
整理文章的AI:提升写作效率的智能助手
为什么要seo 运营,为什么需要seo ,ai人物头盔
SEO可以帮助网站在搜索引擎中获得较高的排名-助力企业数字化转型的关键,赵立新AI换脸图片对比
怎么看文章是不是AI生成的?揭秘背后的玄机与技巧
SEO选择:如何挑选最合适的SEO优化策略?,wb免费刷粉网站推广
未来写作新方式原创AI文章的无限可能
ChatGPT维护-智能时代的数字助手,如何让你的工作更高效,ai智能救援
人工AI软件的未来:智能时代的创新驱动力
seo稿件是什么意思,seo文章写作要求 ,ai写作未来展望和展望
SEO优化需要花钱吗?从零起步,如何让SEO成为企业的“隐形财富”,字体如何往ai里面倒
360排名优化价格:打造高效网络营销的制胜法宝,ai换脸刘浩存自wei
ChatGPT国内版:为中国用户量身定制的智能助手,开启AI新纪元,ai文章赚钱
“扩写AI”-引领写作革命,开启智能创作新时代,dede seo 标题如何填写
ChatGPT不能打开EL?揭秘这一困扰背后的真相与解决方案,ai被动房
SEO导航:助力网站提升流量与排名的必备工具,荣昌建筑网站建设
SEO外链建设:提升网站排名的关键策略,ai偏执
pbootcms自动翻译插件,让你的网站轻松实现多语言覆盖,ai 镀金
乘风SEO:突破困境,领航网络营销新时代,武汉靠谱的关键词排名
SEO关键词推广软件官网-助力企业实现高效精准的网络营销,圈圈ai
SEO收集:如何通过有效数据收集提升网站排名,鞍山商城网站建设报价
如何用AI写公众号文章?让创作更高效、更轻松
为什么选择B站VIP?让你畅享更丰富的视听体验,小门类网站seo