Импортировать и анализировать текстовый файл, содержащий PCL: предложение техники ASP.NET C #? - PullRequest
1 голос
/ 24 марта 2011

Мне нужно очистить старый текстовый файл мэйнфрейма, содержащий язык управления принтером (PCL), для импорта данных.Изменение функций мэйнфрейма не вариант.Распечатка содержит информацию о продажах продукта и имеет иерархический вывод.

Я надеюсь, что я настроил импорт службы интеграции SQL Server (SSIS).В конечном итоге это будет сайт ASP.NET MVC 3 для импорта данных с базой данных SQL 2005, поэтому мы могли бы избежать SSIS.В настоящее время я создаю веб-сайты на C # ASP.NET MVC 3, поэтому использование связанных технологий должно быть управляемым.

Кто-нибудь смог разобрать текстовый отчет обратно в полезный импорт данных с текстовыми шаблонами (такими как регулярные выражения) в C #или SSIS?Существуют ли какие-либо примеры использования шаблона проектирования состояний?

Я нахожу множество этих ответов , показывающих небольшую часть ответа: как загрузить текстовый файл и взять n-й столбецв C #.Это более сложно.Мне нужно идентифицировать каждый тип линии с помощью шаблона на основе того, в каком состоянии импорта я нахожусь.Готовое программное обеспечение было бы еще лучше.

Пример текстового файла:

this part may be a header for the page which needs skipped
this part may be a header for the page which needs skipped
this part may be a header for the page which needs skipped

first line containing prices
  second line containing product description for the first line
    third line containing a related product (listing all flavors)
      fourth line containing a description for the third line
    [third and forth may repeat]
  [product set summary line]
[ repeat for next product]

this part may be a footer for the page that needs skipped
this part may be a footer for the page that needs skipped

at any point, the products will span between pages, 
having header and footer lines between product data.    

1 Ответ

1 голос
/ 24 марта 2011

Я много разобрался в C #. Однако, здесь, мне не ясно, какой тип текста вам нужно проанализировать (ваш пример не показывает фактический текст). Очевидно, вам нужен какой-то способ определения типа каждой строки.

Вот пара статей, которые могут помочь:

Класс помощника по синтаксическому анализу текста

Замена sscanf () для .NET

...