c# - 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”下方的行中获取详细信息
解决方案
如果你需要在你要找的那一行之后,你可以这样做:
File
.ReadLines(extractData)
.SkipWhile(e => !e.StartsWith("Currency Charge Totals"))
.Skip(1)
.FirstOrDefault();
推荐阅读
- angular - Jasmine Angular 测试有时通过有时不通过,具体取决于描述前缀
- reactjs - 在 React 中创建页面组件有什么好处?
- github - 是否有与 Github Actions 等效的 Gitlab CI?
- mongodb - 查询文档以获取数组值为 null 的记录
- xcode - 使用按钮设置背景颜色
- git - Jenkins 将 Master 或 Tagged 分支部署到生产环境
- python - 按像素值分割图像
- javascript - 像 readFileSync 函数这样的函数在 Node.js 中是如何工作的?
- amazon-web-services - Terraform 0.12:提供商产生的最终计划不一致
- python - Pyspark 合并 2 个数据帧而不丢失数据