Форум: "Основная";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];
ВнизРезка txt файла... Найти похожие ветки
← →
vigo (2004-09-20 10:56) [0]Народ, подскажите как лучше сделать программу, которая "резала" бы текстовый файл на несколько файлов по дате: Текстовый файл содержит дату и после неё текст; затем дата, текст и т.д. (Сколько дат - столько файлов).
← →
TUser © (2004-09-20 10:57) [1]TStringList + код, который определит, что в данной строке есть именно дата.
← →
ssk © (2004-09-20 11:40) [2]TStringList здесь не нужен. достаточно Readln, Writeln, AssignFile и CloseFile.
← →
ssk © (2004-09-20 11:42) [3]ну еще Reset c Rewrite"ом :-)
← →
vigo (2004-09-20 11:51) [4]А как именно делать поиск даты?
(var f: textfile;
...)
Assignfile(f,opendialog.FileName);
reset(f);
while not eof(f) do begin
readln
Пока нет опыта поиска построчно...
← →
Jeer © (2004-09-20 12:06) [5]А почитать Pascal ?
← →
GuAV © (2004-09-20 12:30) [6]
> А как именно делать поиск даты?
вобщем, зависит от того что есть дата.
← →
TUser © (2004-09-20 12:34) [7]
> ну еще Reset c Rewrite"ом :-)
Reset я знаю, а Rewrite у меня на корпусе нет. А что это :?)
← →
ssk © (2004-09-20 13:04) [8]TUser
а Rewrite у меня на корпусе нет. А что это :?)
везет же некоторым! у меня даже Reset"а нет ;-)
← →
vigo (2004-09-20 13:24) [9]дата - некий текст в строке...
Пытаюсь найти текст в строке, содержащую три (АТМ) символа
while not eof(f) do begin
readln(f, s);
if s:= "like %ATM%" then
{пытаюсь запихнуть эту строку пока в listbox}
then listbox1.Items.Add(s);
Мучаюсь... :-)
Подскажите люди добрая
← →
П7 (2004-09-20 13:58) [10]У тебя внутренности текстового файла хоть как-то структурированы или навалены в одну большую кучу без пробелов и переходов строк?
Дата в каком формате задаётся?
Например еслиу тебя каждая новая дата идёт с новой строки и имеет формат "%ii.%ii.%iiii Тут уже может идти текст", т.е. три числа разделённые точкой, при этом первые 2 занимают по 2 символа а 3 - 4 символа, и текст начинается после пробела, то тогда можно делать следующим образом:
1. Открываем файл на чтение
2. Если конец файла ->7, иначе Считываем строку
3. Если 3 и 6 символы - точки "." [if (str[3] = ".") and (str[6] = ".") ], то ->4, иначе ->6
4. Если первые 2 символа преобразуются в число от 1 до 31, если 4 и 5 символы преобразуются в число от 1 до 12, если символы от 7 до 10 преобразуются в число то ->5, иначе ->6
5. Закрываем открытый ранее файл. Открываем новый файл с нужным именем, например именем может стать полученная дата
6. Пишем полученную строку в файл и ->2
7. Закрываем файл
В общем я думаю алгоритм достаточно ясен... Парсинг строки не более...
← →
vigo (2004-09-20 14:13) [11]Прошу прощения ищу не дату, а символосочетание "АТМ" в строке. Сам текст представляет что-то вроде кучи похожих друг на друга таблиц следующих друг за другом. Пытаюсь в строке найти это символосочетание "АТМ", следующие несколько строк представляют собой нужную таблицу.
(извиняюсь за смутные объяснения...)
← →
TUser © (2004-09-20 14:19) [12]
> if s:= "like %ATM%" then
Вот это адназначно - переписать. Тут тебе не sql
← →
vigo (2004-09-20 14:38) [13]подскажите как найти искомые символы в строке...?
заранее спасибо!
← →
Amoeba © (2004-09-20 14:41) [14]Pos + F1
← →
TUser © (2004-09-20 15:16) [15]if not (pos() = 0) then
if pos <> 0 then
← →
alless (2004-09-20 15:29) [16]Дайте чясть файла, посмотреть что и как там написаны данные
← →
vigo (2004-09-20 15:45) [17]{строка - 1}
Cycle Name| ATM00160 SOC
{строка - 2}
1 | | | 0 | 0 | 0
{строка - 3}
| 0 | 0 |Not Configu
{строка - 4}
2 | | | 0 | 0 | 0
{строка - 5}
| 0 | 0 |Not Configu
... и т.п.
← →
ssk © (2004-09-20 15:48) [18]ну и где здесь даты?
← →
vigo (2004-09-20 15:53) [19]ищу не дату, а символосочетание "АТМ" в строке
← →
ssk © (2004-09-20 15:58) [20]а это что? ты сам в вопросе написал:
как лучше сделать программу, которая "резала" бы текстовый файл на несколько файлов по дате: Текстовый файл содержит дату и после неё текст;
← →
vigo (2004-09-20 16:06) [21]ладно... буду сам мучаться
← →
Anatoly Podgoretsky © (2004-09-20 16:11) [22]А ты прочитал советы выше, другие вряд ли будут, поскольку этих достаточно, можно конечно написать свои функции поиска подстроки, но зачем.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.038 c