Как я могу заполнить datagrid анализируемыми данными PDF
Так что на данный момент у меня есть PDF-файл, который я разбираю. Я разделил его там, где мне нужно
CYT-HMI-S-005 CarrierSCAC: BPUS Stop Number:1 Release Type: AUTO Route Name: Days to Pick-up Delivery Final Order Due @ Frequency: Frequency: Location Carrier Arrival Carrier Departure Plant Destination Dock Code Initial Dest Final Location Initial Arrival 10:45 11:15 HMI IHMI1 HMI 14:45 14:45 0 MTWRFS MTWRFS // This is the only line I need to parse and add to the datagrid.
Данные в этой строке
10:15 11:00 HMI IOSL1 OSL 17:15 17:15 0 MTWRFS MTWRFSэто просто данные, которые включают в себя время прибытия, Время отправления, компанию, корабль-к месту и так далее. Проблема не в данных. Проблема заключается в импорте этой строки в сетку данных под определенными столбцами.
Поэтому после каждого "первоначального прибытия" я хотел бы разобрать эту текстовую строку
10:15 11:00 HMI IOSL1 OSL 17:15 17:15 0 MTWRFS MTWRFSи вставьте его в датагрид.
Или План Б:
Я запускаю запрос из базы данных, который возвращает отгрузки и может сопоставить результаты с проанализированными pdf-данными через столбец
TLDR: есть важные данные, хранящиеся в 2 разных местах. Данные в формате PDF отправляются ежемесячно из компании. Мне нужно иметь возможность сопоставлять столбцы из базы данных и проанализированные данные pdf.
Что я уже пробовал:
public static void ReadPDF() { PdfReader reader = new PdfReader(@"file.pdf"); int intPageNum = reader.NumberOfPages; string text; string[] words; string line; for (int i = 1; i <= intPageNum; i++) { text = PdfTextExtractor.GetTextFromPage(reader, i, new LocationTextExtractionStrategy()); words = text.Split($"Delivery Frequency:"); for (int j = 0, len = words.Length; j < len; j++) { line = Encoding.UTF8.GetString(Encoding.UTF8.GetBytes(words[j])); Debug.Print(line); } }
Это код, который я использую для анализа PDF-данных.