如何使用java读取pdf文件中包含单元格的表格?

如何使用java读取pdf文件中包含单元格的表格?,java,pdf,itext,Java,Pdf,Itext,我非常努力地读取pdf文件中包含行和单元格的表格,以便按系统顺序获取记录。 我在谷歌上做了很多工作,但我找不到最好的方法 所以我想问一个问题- 问题1-我们可以从pdf文件中读取数据吗? 我们能从pdf表格的任何单元格中读取数据吗 我正在使用java的itext来实现这一点 请给我举个例子。 谢谢你两个问题的答案都是:视情况而定 假设您有一张ZUGFeRD发票。在这种情况下,发票是一个PDF/a-3文档,其中包含一个CII XML格式的嵌入式文件。提取此XML并读取它以获取有关发票的所有必要信

我非常努力地读取pdf文件中包含行和单元格的表格,以便按系统顺序获取记录。 我在谷歌上做了很多工作,但我找不到最好的方法

所以我想问一个问题-

问题1-我们可以从pdf文件中读取数据吗?
我们能从pdf表格的任何单元格中读取数据吗

我正在使用java的itext来实现这一点

请给我举个例子。
谢谢

你两个问题的答案都是:视情况而定

  • 假设您有一张ZUGFeRD发票。在这种情况下,发票是一个PDF/a-3文档,其中包含一个CII XML格式的嵌入式文件。提取此XML并读取它以获取有关发票的所有必要信息非常容易。嵌入或附加文件的概念包含用于创建PDF的数据源,或PDF以外的其他形式的数据,这是一种用于满足您需要的技术
  • 您可以从PDF中提取文本。这在一些问题中进行了解释,例如,但是您只获得原始文本,而没有格式化。在许多情况下,PDF由一堆文本和放在画布上绝对位置的行组成。页面上的单词不知道它是否是句子的一部分、单元格的一部分等,除非:
  • 如果PDF是带标签的PDF,则PDF还包含有关内容结构的信息。例如:内容将包含指示表、表标题、表行、表单元格等结构的标记。如果您谈论的是带标签的PDF,那么可以以结构化的方式提取文本
在过去,我们已经完成了一个项目,我们收到了来自VISA、万事达、美国运通等的信用卡对账单,。。。我们必须提取所有费用,并将其作为记录存储在数据库中。我们之所以能够做到这一点,是因为声明的格式是可预测的:所有VISA声明都是一样创建的,因此我们能够找到允许我们提取数据的模式


不言而喻,我们不共享用于此操作的代码。付钱给我们做那个项目的公司不会高兴的。

看到了吗?在提出问题之前,你应该自己花点时间。如果不是,人们很可能会否决你的问题。“这是我的任务,请为我做所有的工作”的问题不会飞到这里。