以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何将PDF转成Excel或读取里面的文本信息  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=129784)

--  作者:gareny
--  发布时间:2019/1/6 10:03:00
--  如何将PDF转成Excel或读取里面的文本信息
1、如何将PDF转成Excel
2、如何读取PDF文件里面的文本信息

--  作者:有点甜
--  发布时间:2019/1/6 20:57:00
--  

参考

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=83249&skin=0

 


--  作者:gareny
--  发布时间:2019/1/7 9:44:00
--  
针对附件我试了一下,就是没内容,请你帮我测试一下
--  作者:gareny
--  发布时间:2019/1/7 9:46:00
--  上传附件
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:test2.rar

针对附件我试了一下,就是没内容,请你帮我测试一下
[此贴子已经被作者于2019/1/7 9:48:56编辑过]

--  作者:有点甜
--  发布时间:2019/1/7 10:35:00
--  

需要换一种方法。

 

引用pdfbox https://pan.baidu.com/s/1i5FpQvV

 

执行代码,如

 

Dim doc As org.apache.pdfbox.pdmodel.PDDocument = Nothing
Try
    doc = org.apache.pdfbox.pdmodel.PDDocument.load("d:\\test2.pdf")
    Dim pages = doc.getDocumentCatalog().getAllPages()
    Dim pdfStripper = new org.apache.pdfbox.util.PDFTextStripper
    Dim text = pdfStripper.getText(doc)
    msgbox(text)
catch ex As exception
    msgbox(ex.message)
Finally
    If doc IsNot Nothing Then
        doc.close()
    End If
End Try


--  作者:gareny
--  发布时间:2019/1/8 10:30:00
--  
1、你发的文件包似乎有误,拷贝到安装目录下 有个文件 fontbox-1.8.9.dll,而引用中的却是pdfbox-1.8.9.dll
2、我将 拷贝到安装目录下 的文件 拷贝到安装目录,将引用dll,也拷贝到安装目录,然后再引用指定的文件,拷贝上面的代码提示错误
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:错误信息.rar

--  作者:有点甜
--  发布时间:2019/1/8 10:57:00
--  

1、把dll全部拷贝到安装目录下;

 

2、在foxtable里面引用三个dll。


--  作者:gareny
--  发布时间:2019/1/8 11:02:00
--  
ok,数据可以读取了,但现在问题是读出来的数据很多本来PDF上有空格的,但是现在连在一起了,没办法分割。

而且发现 少了一栏 Branch Plant 对应的数据 “601172” “601177”
[此贴子已经被作者于2019/1/8 11:07:32编辑过]

--  作者:有点甜
--  发布时间:2019/1/8 11:09:00
--  
以下是引用gareny在2019/1/8 11:02:00的发言:
ok,数据可以读取了,但现在问题是读出来的数据很多本来PDF上有空格的,但是现在连在一起了,没办法分割。

而且发现 少了一栏 Branch Plant 对应的数据
[此贴子已经被作者于2019/1/8 11:05:14编辑过]

 

没办法。只能这样了。

 

不然,你可以尝试一些【付费】的pdf控件,如 https://www.foxitsoftware.cn/products/sdk/NETsdk/

 


--  作者:gareny
--  发布时间:2019/1/24 16:07:00
--  
读取文件 基本 上可以了,但是在打印PDF的时候提示错误:
Dim doc As org.apache.pdfbox.pdmodel.PDDocument = Nothing
doc = org.apache.pdfbox.pdmodel.PDDocument.load("d:\\test2.pdf")
doc.Print()

提示错误为:PrinterJob not found: sun.awt.windows.WPrinterJob