如何从PowerShell中的pdf中提取列式数据?

时间:2017-11-14 08:58:19

标签: powershell

我想读一个包含一些数据的.pdf文件。如何仅使用PowerShell从一个特定列中提取完整数据?我使用iText 5 .NET(又名iTextSharp)进行pdf数据提取。

这是我当前的代码,它提取整行:

$reader = New-Object iTextSharp.text.pdf.pdfreader -ArgumentList testPOC.pdf
$page = 2
$text = [iTextSharp.text.pdf.parser.PdfTextExtractor]::GetTextFromPage($reader, $page).Split([char]0x000A)
Write-Host $text[5]

输出显示为:

ID          Working Agent   Assistant Name        Plan           Gender  Year   Amount     Comm.%  Split%   Commission
4169985061  Paul E. Ted     Alskd, Ols      fhghslhshsl+(0sdhsk)    M      12   $1,234.00   0.45%   100.00%  $32.78 

如何仅从一个列中获取数据(例如,仅从工资列中获取)?

1 个答案:

答案 0 :(得分:0)

这只是对答案的盲目抨击,因为我们不知道$ text的数据类型是什么(除非我们是iTextSharp专家)。您可以通过输入以下内容找到我们:

$text.gettype()  

从输出显示的方式来看,它几乎看起来是PSCustomObject。如果是这样,这样的方法可能有效:

$text | select-object ID, Commission

我使用了Commission,因为我在输出中看不到Salary。我为了上下文添加了ID。

注意:真正的答案是必须等待使用iTextSharp的人并且可能知道$ text的数据类型而不被告知。那可能是漫长的等待。