首页 > 解决方案 > ReadLines 查找 Selector 然后从下一行获取数据

问题描述

我正在尝试从 PDF 中获取一些数据,但是由于重复标识符位于我需要的数据上方的行上,因此出现了问题,并且对于每个 PDF,索引可能会根据内容而有所不同在读取文件时,它已从 PDF 进行 OCR 转换为文本文件。所以从文本文件中读取。

我正在尝试获取货币;
在这种情况下,要读取“EUR”数据:

货币费用总计
233.00 欧元

var currencyLine = File.ReadLines(extractData).Last(e => e.StartsWith("Currency Charge Totals"));
out_currency = (currencyLine.Substring(currencyLine.LastIndexOf(" ") + 1)).Trim();

此 PDF 中的“货币费用总计”以获取货币类型。我知道目前这段代码不会在第二次返回任何值,我只是在做类似的事情来获取其他数据。

我只需要一些帮助来了解我需要更改的内容,以便从“ReadLine”下方的行中获取详细信息

标签: c#substringreadlinedata-extractionstartswith

解决方案


如果你需要在你要找的那一行之后,你可以这样做:

File
.ReadLines(extractData)
.SkipWhile(e => !e.StartsWith("Currency Charge Totals"))
.Skip(1)
.FirstOrDefault();

推荐阅读