首页 分享 java.io.ioexception

java.io.ioexception

来源:花匠小妙招 时间:2024-12-13 12:17

最新推荐文章于 2024-10-20 00:08:10 发布

捡钱花 于 2021-02-20 15:54:28 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

我需要将fodt文件转换为pdf.在浪费了几天试图使用各种转换器后,我意识到使用libreoffice可以做到这一点.

/usr/bin/libreoffice --headless --convert-to pdf:'writer_pdf_Export' --outdir /home/develop/tomcat/mf/ROOT/private/docs/0/ /home/develop/tomcat/mf/ROOT/private/docs/0/35_invoice.fodt

但是从命令行中完美运行的东西在java中不起作用……

java.io.IOException: Cannot run program "/usr/bin/libreoffice --headless --convert-to pdf:'writer_pdf_Export' --outdir /home/develop/tomcat/mf/ROOT/private/docs/0 /home/develop/tomcat/mf/ROOT/private/docs/0/35_invoice.fodt": java.io.IOException: error=2, No such file or directory

我遵循了许多方法和不同的方法,但结果总是一样的.

命令:

"/usr/bin/libreoffice --headless --convert-to pdf:'writer_pdf_Export' --outdir "+ getDestinationDirectory(order)+" "+getInvoiceFilename()+".fodt");

我在一个String中尝试了所有并且也分成了String [].在最后一种情况下,它抱怨参数:

Unknown option: --convert-to pdf:'writer_pdf_Export' --outdir /home/develop/tomcat/mf/ROOT/private/docs/0 /home/develop/tomcat/mf/ROOT/private/docs/0/35_invoice.fodt

这是最后一次测试的样本

List command = new ArrayList(); command.add("/usr/bin/libreoffice"); command.add("--headless"); command.add("--convert-to pdf:'writer_pdf_Export' --outdir " + getDestinationDirectory(order) + " " + getInvoiceFilename() + ".fodt"); ProcessBuilder builder = new ProcessBuilder(command); Process process = null; try { process = builder.start(); } catch (IOException ex) { Logger.getLogger(Documents.class.getName()).log(Level.SEVERE, null, ex); } InputStream is = process.getInputStream(); InputStreamReader isr = new InputStreamReader(is); BufferedReader br = new BufferedReader(isr); String line; try { while ((line = br.readLine()) != null) { System.out.println(line); } } catch (IOException ex) { Logger.getLogger(Documents.class.getName()).log(Level.SEVERE, null, ex); } System.out.println("Program terminated!");

最佳答案

试试这个(保持简单)……

Process p = Runtime.getRuntime().exec("/usr/bin/libreoffice --headless --convert-to pdf:'writer_pdf_Export' --outdir "+ getDestinationDirectory(order)+" "+getInvoiceFilename()+".fodt");

完全……

Process process = null; try { process = Runtime.getRuntime().exec("/usr/bin/libreoffice --headless --convert-to pdf:'writer_pdf_Export' --outdir "+ getDestinationDirectory(order)+" "+getInvoiceFilename()+".fodt"); } catch (IOException ex) { Logger.getLogger(Documents.class.getName()).log(Level.SEVERE, null, ex); } BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream())); String line; try { while ((line = br.readLine()) != null) { System.out.println(line); } } catch (IOException ex) { Logger.getLogger(Documents.class.getName()).log(Level.SEVERE, null, ex); } br.close(); System.out.println("Program terminated!");

点击查看更多相关文章

转载注明原文:java.io.IOException:无法运行程序“…”:java.io.IOException:error = 2,没有这样的文件或目录 - 乐贴网

相关知识

no such file or directory
CDH集群规划
基于Servlet的网上花店系统源码+数据库.zip资源
java servlet web网上花店商城系源码
php花店会员信息管理系统,PHP网上花店管理系统
循环
SSM项目鲜花销售管理系统.zip
【水果库存系统】Themeleaf + Servelt 实现小型水果库存系统(1)
JSP中日文乱码问题的解决
使用IDEA完成登录与注册

网址: java.io.ioexception https://www.huajiangbk.com/newsview1074161.html

所属分类:花卉
上一篇: bootstarp 的表单控件大
下一篇: Android10 androi

推荐分享