java读取pdf文件类型的流

zxm0109 2012-07-31 11:21:30
在控制台只输出了第一页的内容,其余的都没有读出来,控制台的信息是:

2012-7-31 11:22:26 org.apache.pdfbox.util.PDFStreamEngine processOperator
信息: unsupported/disabled operation: EI



求解决方法
...全文
1001 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxm0109 2012-08-02
  • 打赏
  • 举报
回复
还是不可以啊!!!



java.io.IOException: Cannot run program "pdftotext": CreateProcess error=2, ?????????
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at readPdf.Zhidian.getPdfContent(Zhidian.java:16)
at readPdf.Zhidian.main(Zhidian.java:8)
Caused by: java.io.IOException: CreateProcess error=2, ?????????
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
... 5 more
Exception in thread "main" java.lang.NullPointerException
at readPdf.Zhidian.getPdfContent(Zhidian.java:21)
at readPdf.Zhidian.main(Zhidian.java:8)
pandrawla 2012-07-31
  • 打赏
  • 举报
回复
public String getPdfContent(String filePath){
String excute="pdftotext";

String[] cmd=new String[]{excute, "-enc", "UTF-8", "-q", filePath,"-"};
Process p=null;
try {
p=Runtime.getRuntime().exec(cmd);
} catch (IOException e) {
e.printStackTrace();
}

BufferedInputStream bis=new BufferedInputStream(p.getInputStream());

InputStreamReader reader=null;

try {
reader=new InputStreamReader(bis,"UTF-8");
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
}

StringBuffer sb=new StringBuffer();

try {
BufferedReader br = new BufferedReader(reader);
String line = br.readLine();
sb = new StringBuffer();
while (line != null) {
sb.append(line);
sb.append(" ");
line = br.readLine();
}
} catch (Exception e) {
e.printStackTrace();
}

return sb.toString();
}

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧