|
Вопрос # 890/ вопрос открыт / |
|
Здравствуйте, уважаемые эксперты!
Помогите пожалуйста, нужна срочно любая информация.
Подскажите какие команды используются.
Есть файл на диске необходимо считать его имя, например art00.txt вынуть из имени файла последнии перед точкой 2 символа. При записи нового файла сравнивать этот файл с записанным на диске под любым номером и увеличивать номер файла +1, например art00.txt -> art01.txt
 |
Вопрос задал: Евгений Jons (статус: Посетитель)
Вопрос отправлен: 4 сентября 2007, 10:13
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: Вадим К
Здравствуйте, Евгений Jons!
итак, я вижу два решения. Первое будет в вашем случае вполне приемлемым, так как кол-во файлов не будет больше 100.
решение банально в цикле генерируем имена и проверяем, есть ли такой файл на диске.тоесть
for i:=0 to 99 do
begin
s:=format(\'art%2.2d.txt\',[i]);
if not FileExist(\'путь к каталогу\'+s) then break;
end;
//по выходу с цикла в переменной s имеем имя файла, которого ещё нет и оно следующее(конечно при условии, что у нас нет пропусков)
Есть и другое решение, основанное на составлении списка всех файлов и подальшем анализе, но я думаю, оно будет слишком громоздко для вас. Но если всё таки интересует, то приведём в минифоруме
 |
Ответ отправил: Вадим К (статус: Академик)
Время отправки: 4 сентября 2007, 11:52
|
Мини-форум вопроса
Мини-форум пуст.
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|