텍스트 파일 읽기 기능을 직접 작성할 때 직면하게 될 첫 번째 문제는 주어진 파일 이름에 대해 그것이 나타내는 디스크 파일이 실제로 텍스트 파일인지 어떻게 알 수 있는가입니다. 다음은 매우 간단한 방법입니다. 지정된 파일을 유형이 지정되지 않은 바이너리 파일로 처리한 다음 파일의 각 바이트를 순차적으로 읽습니다. 파일에 값이 0인 바이트가 있으면 이 파일은 텍스트가 아닙니다. file; 반대로, 파일에 0 값이 없는 바이트가 있으면 해당 파일은 텍스트 파일이라고 판단할 수 있습니다. 이것이 원칙입니다. 이를 구현하기 위해 델파이에서 프로그래밍하는 방법을 살펴보겠습니다.
다음과 같이 코드 코드를 복사합니다.
functionIsTextFile(파일 이름:string):boolean;
var
Fs:TFileStream;
i,크기:정수;
IsTextFile:부울;
바이트데이터:바이트;
시작하다
ifFileExists(파일 이름) then
시작하다
Fs:=TFileStream.Create(파일 이름,fmOpenRead);
IsTextFile:=true;
나는:=0;
크기:=Fs.크기;
while(i<size)andIsTextFiledo
시작하다
Fs.Read(ByteData,1);
IsTextFile:=ByteData<>0;
Inc(i)
끝;
Fs.Free;
결과:=IsTextFile
끝
또 다른
결과:=거짓
끝;