![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
сквозная нумерация файлов
Daria © (2006-02-08 11:00:00)Всем привет! В результате работы проги создается файл. Например, 01.txt. Как сделать, чтобы файл сохранялся соответственно со след. номером? Т.Е. после первого запуска файл был 01, после второго - 02 и т.д.
Плохиш (2006-02-08 15:47:00) [1]
> Daria (08.02.06 11:52) [6]
> а как определить последний файл?
0. Завести переменную для сохранения максимального номера и присвоить ей нуль.
1. Поиск файла FindFirst/FindNext
2. Взять название файла без расширения
3. Преобразовать в число, проверить, если это число больше сохранённого, то сохранить его.
4. Если все файлы кончились, то в сохранённой переменной находится максимальный использованный номер. Для получения нового номера достаточно произвести увеличение на единицу.
Desdechado (2006-02-08 13:24:00) [2]можно "с конца" начать :)
msguns (2006-02-08 13:23:00) [3]>Daria (08.02.06 12:11) [10]
Способ дохлый, т.к. валится от первой же "дыры" в номерах: новый файл будет иметь не старший номер.
Daria (2006-02-08 12:12:00) [4]ой-ой-ой. торможу. все нормально. спасибо!
Daria (2006-02-08 12:11:00) [5]мне нужно именно 1,2,3 и т.п.
a:=1;
while FileExist(IntToStr(a)+'.txt') do inc(a);
FileName := IntToStr(a)+'.txt';
а вот в этом а все время равно 1, хотя файлов уже 2: 1 и 2
vovnuke (2006-02-08 12:05:00) [6]Например просто уникальное имя файла можно получить так:
FileName := FormatDateTime('yyyymmddhhmmsszzz', Now);
Daria (2006-02-08 12:03:00) [7]файлов лом
wal (2006-02-08 12:01:00) [8]
a:=1;
while FileExist(IntToStr(a)+'.txt') do inc(a);
FileName := IntToStr(a)+'.txt';
Если файлов не много, то приемлемо.
Daria (2006-02-08 11:52:00) [9]а как определить последний файл?
Desdechado (2006-02-08 11:38:00) [10]что мешает определить номер последныего файла в папке?
Gero (2006-02-08 11:28:00) [11]Сохраняй посленее число в отдельном файле.
Daria (2006-02-08 11:26:00) [12]чего??? поясни, пжлста
msguns (2006-02-08 11:13:00) [13]Если же № сам по себе не играет роль, а нужна лишь уникальность и очередность, то лучше использоваить алгоритм получения носера из текущей даты-времени.
msguns (2006-02-08 11:12:00) [14]Завести еще один, "служебный" файл, где вести список номеров файлов, откуда и определять новый №