Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.02;
Скачать: CL | DM;

Вниз

Обработчик произвольных строк с разделителями.   Найти похожие ветки 

 
Андрей Сенченко ©   (2004-04-18 11:21) [0]

Чисто теоретический вопрос. Наверное сразу в "потрепаться", но отношение к "Общим" имеет.

Общая теория.

Во многих складских и учетных программах отечественных поризводителей файловый почтовый обмен построен на файлах формата "текст с разделителями".
В некоторых случаях нет особой необходимости в покупке на рабочее место отдельной лицензии - если человеку и нужно то пару отчетов в день получить. Проще разгрести нужный файл в костыле - самописке и выдать на экран нужную информацию.

Почтовый файл имеет примерно следующий формат

Шапка_1
Шапка_2
...
Шапка_N

Строка_вид_1=var1_1,var1_2,var1_3,var1_4
Строка_вид_2=var2_1,var2_2,var2_3,var2_4,var2_5
Строка_вид_2=var2_1,var2_2,var2_3,var2_4,var2_5
Строка_вид_3=var3_1,var3_2
Строка_вид_1=var1_1,var1_2,var1_3,var1_4
...

В пределах одного файла количество переменных в каждом виде строки данных ( мощность строки ) неизменна. Но в разных файлах безусловно может отличаться.
Написание парсера - не проблема, хотя подходы могут быть разные.

Вопрос:
Проблема стоит в выборе наиболее оптимального хранилища данных для обработанных строк. Объявлять новые виды записей ( Record ) для каждого нового вида фалов обмена не очень хочется. Есть желание большей универсальности.
Собственно формулировка вопроса наверное следующая :
Что бы Вы посоветовали использовать в качестве хранилища данных после обработки файла - СтрингЛисты, массивы, записи, Ини-файлы ( почему бы нет ) или динамически создаваемые поля некой СУБД ?


 
Anatoly Podgoretsky ©   (2004-04-18 11:26) [1]

Немного субмурно оббъясняешь, но если в рамках приведенной струкутуры, то часть Строка_вид_N проще всего в динамический, двухмерный, непрямоугольный массив строк.
Отдельно решение по шапке.



Страницы: 1 вся ветка

Текущий архив: 2004.05.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.024 c
6-1078345016
NightBlaze
2004-03-03 23:16
2004.05.02
net send


14-1081523027
Kolyan
2004-04-09 19:03
2004.05.02
Нелегкий выбор


1-1082013300
Тимохов
2004-04-15 11:15
2004.05.02
MakeObjectInstance


1-1081345743
Samael6
2004-04-07 17:49
2004.05.02
Проблема с ZLib


6-1078045245
Alexis
2004-02-29 12:00
2004.05.02
отправка письма через TClientSocket