우선 가변적인 데이터라면, 저장되는 레코드 단위마다 사이즈를 미리 저장해야합니다..
그래야 읽어들일 데이터의 양을 결정하게 되니까요..
String[255]와 같이 하시면 굳이 그러실 필요는 없고요..
BlockRead는 터보파스칼 때 부터 있던 오래된 함수고..
TFileStream을 이용하심이 어떨까 하네요..
Type
TEntryInfo = record
SourceUrlName: string[255];
LocalFileName: string[255];
EntryType: DWORD;
UseCount: DWORD;
HitRate: DWORD;
FSize: DWORD;
LastModifiedTime: TDateTime;
end;
var
fsData : TFileStream;
EntryInfo : TEntryInfo ;
begin
fsData:= TFileStream.Create('파일명', fmOpenRead);
fsData.Read(EntryInfo, Sizeof(EntryInfo));
....
초보빌더 님이 쓰신 글 :
: TEntryInfo = record
: SourceUrlName: string;
: LocalFileName: string;
: EntryType: DWORD;
: UseCount: DWORD;
: HitRate: DWORD;
: FSize: DWORD;
: LastModifiedTime: TDateTime;
: end;
: 위 형태의 record로 저장된 파일을 읽어오려고 합니다.
: string 형태로 값은 가변적이고요.
: 파일에 헤더부분이 있어서 그부분은 건너띄고 읽기 시작해야합니다.
: 어떻게 읽어야하나요.
: 초보라서 BlockRead함수를 읽어야한다는데.. record구조로 읽으려면 어떻게 해야할지..
:
:
|