Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Определить, имеет ли файл ASCII-формат

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

function isAscii(NomeFile: string): Boolean;
 const
   SETT = 2048;
 var
   i: Integer;
   F: file;
   a: Boolean;
   TotSize, IncSize, ReadSize: Integer;
   c: array[0..Sett] of Byte;
 begin
   if FileExists(NomeFile) then
   begin
     {$I-}
     AssignFile(F, NomeFile);
     Reset(F, 1);
     TotSize := FileSize(F);
     IncSize := 0;
     a       := True;
     while (IncSize < TotSize) and (a = True) do
     begin
       ReadSize := SETT;
       if IncSize + ReadSize > TotSize then ReadSize := TotSize - IncSize;
       IncSize := IncSize + ReadSize;
       BlockRead(F, c, ReadSize);
       // Iterate 
      for i := 0 to ReadSize - 1 do
         if (c[i] < 32) and (not (c[i] in [9, 10, 13, 26])) then a := False;
     end; { while }
     CloseFile(F);
     {$I+}
     if IOResult <> 0 then Result := False
     else
        Result := a;
   end;
 end;


 procedure TForm1.Button1Click(Sender: TObject);
 begin
   if OpenDialog1.Execute then
     if isAscii(OpenDialog1.FileName) then
       ShowMessage('ASCII File');
 end;
Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay