TURBO PASCAL |
Новости
|
3.3.2. Тестовая программаВ следующей программе иллюстрируется применение некоторых из содержащихся в модуле F_Disk подпрограмм. Программа запрашивает имя любого уже существующего на диске текстового файла и осуществляет вывод его содержимого на экран дисплея. Uses DOS,F_Disk; var Name: string; Text: array [1..512] of Char; k,j : Word; N : Word; DI : TDisk; Item: Dir Type; Disk: Byte; Sec : Word; begin GetListDisk(Disks); {Формируем список дисков} repeat Write('Введите имя файла '+ '(или нажмите Enter для выхода): '); ReadLn(Name); if Name <> '' then begin Name := FExpand(Name); {Полное имя файла} Disk := GetDiskNumber(Name[1]); GetDiskInfo(Disk,DI) ; GetDirItem(Name,Item); /Элемент каталога} if not Disk_Error then with Item do begi-n Sec := GetSector(Disk,FirstC); {Номер 1-го сектора файла} j := 0; {Количество прочитанных секторов} if not Disk_Error then repeat {Цикл печати файла} ReadSector(Disk,Sec,1,Text; ; if Size < 512 then N := Size for k := 1 to N do Write(Text[k]) ; dec(Size,M); (Size - нераспечатанный остаток файла} inc(j) ; if j < DI.CXusSize then inc(Sec) else begin j := 0; FirstC := GetFATItem(Disk, PirstC) Sec := GetSector(Disk,FirstC) end until Size = 0 else WriteLn('Ошибка чтения файла') end else WriteLn('Ошибка поиска файла') end until Name = ''; FreeListDisk(Disks) {Удаляем связанный список} end. |
(с)Все права защищены По всем интересующим вопросам прошу писать на электронный адрес |