以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 如何提取PDF文件中表格数据 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=188357) |
-- 作者:ZJZK2018 -- 发布时间:2023/9/15 17:41:00 -- 如何提取PDF文件中表格数据 如何提取PDF文件中表格数据到数据库中 [此贴子已经被作者于2023/9/15 19:11:12编辑过]
|
-- 作者:ZJZK2018 -- 发布时间:2023/9/15 18:21:00 -- Dim reader As New iTextSharp.text.pdf.PdfReader("d:\\test.pdf") Dim n As Integer = reader.NumberOfPages Dim str As String = "" For i As Integer = 1 To n Dim strategy As object = New iTextSharp.text.pdf.parser.SimpleTextExtractionStrategy() Dim currentText As String = iTextSharp.text.pdf.parser.PdfTextExtractor.GetTextFromPage(Reader, i, strategy) currentText = Encoding.UTF8.GetString(ASCIIEncoding.Convert(Encoding.[Default], Encoding.UTF8, Encoding.[Default].GetBytes(currentText))) str &= currentText Next msgbox(str) reader.Close() [此贴子已经被作者于2023/9/15 18:29:49编辑过]
|
-- 作者:有点蓝 -- 发布时间:2023/9/16 11:44:00 -- 可能.net版本问题,要引用.net 4.0的iTextSharp.dll |
-- 作者:ZJZK2018 -- 发布时间:2023/10/18 22:09:00 -- Dim doc As org.apache.pdfbox.pdmodel.PDDocument = Nothing Try doc = org.apache.pdfbox.pdmodel.PDDocument.load("d:\\AAA.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 |
-- 作者:有点蓝 -- 发布时间:2023/10/18 22:59:00 -- 使用的第三方dll是.net 4.0的吗?复制到Foxtable安装目录了吗? |
-- 作者:ZJZK2018 -- 发布时间:2023/10/18 23:36:00 -- 我用的是net4.0, itextsharp.dll已复制了,但还是出错 我用下面代码是可以的 Dim reader As New iTextSharp.text.pdf.PdfReader("d:\\AAA.pdf") Dim n As Integer = reader.NumberOfPages Dim str As String = "" For i As Integer = 1 To n Dim strategy As object = New iTextSharp.text.pdf.parser.SimpleTextExtractionStrategy() Dim currentText As String = iTextSharp.text.pdf.parser.PdfTextExtractor.GetTextFromPage(Reader, i, strategy) currentText = Encoding.UTF8.GetString(ASCIIEncoding.Convert(Encoding.[Default],
Encoding.UTF8,
Encoding.[Default].GetBytes(currentText))) str &= currentText Next \'msgbox(str) Output.Show(str) reader.Close() [此贴子已经被作者于2023/10/18 23:39:18编辑过]
|
-- 作者:有点蓝 -- 发布时间:2023/10/19 8:23:00 -- 4楼是另外一个组件吧,和itextsharp没有任何关系 |
-- 作者:ZJZK2018 -- 发布时间:2023/10/19 9:33:00 -- 使用的第三方dll是.net 4.0的吗?复制到Foxtable安装目录了吗? 我用net4.0的, 其他如何处理??
|
-- 作者:有点蓝 -- 发布时间:2023/10/19 9:44:00 -- 其他什么东西如何处理? |
-- 作者:ZJZK2018 -- 发布时间:2023/10/19 10:03:00 -- 使用的第三方dll是.net 4.0的吗?复制到Foxtable安装目录了吗? Net4.0如何复制到Foxtable安装目录 |