Страница 1 из 2
Работа с файлами
Добавлено: 30 май 2007, 11:25
LoDar
доброе время суток!
подскажите, как в паскале сделать программку, удаляющую в нужной мне папке файлы и папки старше 14 дней.
Re: Работа с файлами
Добавлено: 30 май 2007, 11:30
LAngel
нужно рекурсивно обежать папку, вложенные папки и файлы в них, проверить имя и удалить те, у которых дата отличается от текущей более чем на 14 дней.
Re: Работа с файлами
Добавлено: 30 май 2007, 11:46
LoDar
а как это сделать?
Re: Работа с файлами
Добавлено: 30 май 2007, 13:43
somewhere
" писал(а):нужно рекурсивно обежать папку, вложенные папки и файлы в них,
Ищем на форуме в этом разделе
" писал(а):у которых дата отличается от текущей более чем на 14 дней.
Пишем функцию разности дат
Re: Работа с файлами
Добавлено: 30 май 2007, 16:46
Blood_Magic
про папки с примером я в предыдущей теме написал с отбором по расширению
Re: Работа с файлами
Добавлено: 01 июн 2007, 21:39
Новенький
а подскажите как именно сделать на паскале удаление папки, и как можно сделать, чтоб паскаль выводил текущую дату?
Re: Работа с файлами
Добавлено: 05 июн 2007, 09:52
BBB
Новенький писал(а):а подскажите как именно сделать, чтоб паскаль выводил текущую дату?
Фрагмент из встроенного help-а ПАСКАЛЯ:
GetDate (procedure) (Dos unit and WinDos unit)
==============================
Returns the current date set in the operating system.
Declaration:
procedure GetDate(var Year, Month, Day, DayOfWeek: Word);
Target:
Windows, Real, Protected
Remarks:
Ranges of the values returned are Year 1980..2099, Month 1..12, Day 1..31,
and DayOfWeek 0..6 (where 0 corresponds to Sunday).
See Also:
GetTime
SetDate
SetTime
Sample Code:
Код: Выделить всё
{GetDate.PAS}
{Sample code for the GetDate procedure.}
{ For Windows: }
{ uses WinDos, WinCrt; }
uses Dos;
const
days : array [0..6] of String[9] =
('Sunday','Monday','Tuesday',
'Wednesday','Thursday','Friday',
'Saturday');
var
y, m, d, dow : Word;
begin
GetDate(y,m,d,dow);
Writeln('Today is ', days[dow],', ',
m:0, '/', d:0, '/', y:0);
end.
Re: Работа с файлами
Добавлено: 05 июн 2007, 09:55
BBB
Новенький писал(а):а подскажите как именно сделать на паскале удаление папки
RmDir (procedure)
==================
Removes an empty subdirectory.
Declaration:
procedure RmDir(S: String);
Target:
Windows, Real, Protected
Remarks:
Removes the subdirectory with the path specified by S.
If the path does not
exist, is non-empty, or is the currently logged directory, an I/O error
occurs.
With {$I-}, IOResult returns 0 if the operation was successful; otherwise,
it returns a nonzero error code.
See Also:
ChDir
GetDir
MkDir
RemoveDir
Sample Code:
Код: Выделить всё
{RmDir.PAS}
{Sample code for the RmDir procedure.}
{ For Windows: }
{ uses WinCrt; }
begin
{$I-}
{ Get directory name from command line }
RmDir(ParamStr(1));
if IOResult <> 0 then
Writeln('Cannot remove directory')
else
Writeln('directory removed');
end.
Re: Работа с файлами
Добавлено: 06 июн 2007, 15:14
Новенький
BBB, благодарю

Re: Работа с файлами
Добавлено: 07 июн 2007, 09:43
Новенький
а где взять модули windoc и WinCrt?