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

Вниз

сквозная нумерация файлов   Найти похожие ветки 

 
Daria   (2006-02-08 11:00) [0]

Всем привет! В результате работы проги создается файл. Например, 01.txt. Как сделать, чтобы  файл сохранялся соответственно со след. номером? Т.Е. после первого запуска файл был 01, после второго - 02 и т.д.


 
msguns ©   (2006-02-08 11:12) [1]

Завести еще один, "служебный" файл, где вести список номеров файлов, откуда и определять новый №


 
msguns ©   (2006-02-08 11:13) [2]

Если же № сам по себе не играет роль, а нужна лишь уникальность и очередность, то лучше использоваить алгоритм получения носера из текущей даты-времени.


 
Daria   (2006-02-08 11:26) [3]

чего??? поясни, пжлста


 
Gero ©   (2006-02-08 11:28) [4]

Сохраняй посленее число в отдельном файле.


 
Desdechado ©   (2006-02-08 11:38) [5]

что мешает определить номер последныего файла в папке?


 
Daria   (2006-02-08 11:52) [6]

а как определить последний файл?


 
wal ©   (2006-02-08 12:01) [7]

a:=1;
while FileExist(IntToStr(a)+".txt") do inc(a);
FileName := IntToStr(a)+".txt";

Если файлов не много, то приемлемо.


 
Daria   (2006-02-08 12:03) [8]

файлов лом


 
vovnuke ©   (2006-02-08 12:05) [9]

Например просто уникальное имя файла можно получить так:
FileName := FormatDateTime("yyyymmddhhmmsszzz", Now);


 
Daria   (2006-02-08 12:11) [10]

мне нужно именно 1,2,3 и т.п.

a:=1;
while FileExist(IntToStr(a)+".txt") do inc(a);
FileName := IntToStr(a)+".txt";

а вот в этом а все время равно 1, хотя файлов уже 2: 1 и 2


 
Daria   (2006-02-08 12:12) [11]

ой-ой-ой. торможу. все нормально. спасибо!


 
msguns ©   (2006-02-08 13:23) [12]

>Daria   (08.02.06 12:11) [10]

Способ дохлый, т.к. валится от первой же "дыры" в номерах: новый файл будет иметь не старший номер.


 
Desdechado ©   (2006-02-08 13:24) [13]

можно "с конца" начать :)


 
Плохиш ©   (2006-02-08 15:47) [14]


> Daria   (08.02.06 11:52) [6]
> а как определить последний файл?

0. Завести переменную для сохранения максимального номера и присвоить ей нуль.
1. Поиск файла FindFirst/FindNext
2. Взять название файла без расширения
3. Преобразовать в число, проверить, если это число больше сохранённого, то сохранить его.
4. Если все файлы кончились, то в сохранённой переменной находится максимальный использованный номер. Для получения нового номера достаточно произвести увеличение на единицу.



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

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

Наверх




Память: 0.5 MB
Время: 0.043 c
6-1132151491
Sasha73
2005-11-16 17:31
2006.02.26
Применить параметры во "входящих подлючениях" без перезагрузки ПК


2-1139723356
Seraphim
2006-02-12 08:49
2006.02.26
API


11-1120737346
rOOse
2005-07-07 15:55
2006.02.26
TreeView


3-1135849868
Separator
2005-12-29 12:51
2006.02.26
Востановление базы в MSSQL Server


2-1139488132
sanich
2006-02-09 15:28
2006.02.26
Как заставить TDbf создавать нужное поле?