Текущий архив: 2003.05.29;
Скачать: CL | DM;
Вниз
Как получить количество строк в файле (консольный вариант) Найти похожие ветки
← →
Test (2003-05-17 15:20) [0]Подскажите как - Subj!
← →
Skier © (2003-05-17 15:24) [1]Ну ежели без VCL, то
посмотри как реализован метод LoadFromFile у TStringList-a и
перетащи оттуда всё что нужно (думаю тащить придётся много...)
← →
MBo © (2003-05-17 15:37) [2]http://delphibase.endimus.com/?action=viewfunc&topic=fileattr&id=10366
← →
Song © (2003-05-17 15:40) [3]© Мой
]Function TPricesForm.GetLinesQuanity(S,St: String): LongInt;
Var P,PMap: PByte;
FileH,MapH: THandle;
Size: LongInt;
Begin
ProgressForm.Init("Предварительная обработка...",St,S);
Result:=0;
try
FileH:=FileOpen(S,fmOpenRead);
IF FileH<>INVALID_HANDLE_VALUE then
Begin
Size:=GetFileSize(FileH,nil);
MapH:=CreateFileMapping(FileH,nil,PAGE_READONLY,0,Size,nil);
IF MapH<>0 then
Begin
PMap:=MapViewOfFile(MapH,FILE_MAP_READ,0,0,Size);
P:=PMap;
IF Assigned(P) then
While (P^<>0) Do
Begin
IF P^=13 then Inc(Result);
Inc(P);
Application.ProcessMessages;
End;
UnmapViewOfFile(PMap);
End;
CloseHandle(MapH);
End;
CloseHandle(FileH);
except
IF Assigned(ProgressForm) and (ProgressForm.Visible) then ProgressForm.Close;
MessageDlg("Не удаётся открыть файл "+S+ ". Возможно файл занят другой программой или пользователем или отсутствует. Код ошибки: ""+SysErrorMessage(GetLastError)+""",mtError,[mbOk],0);
Abort;
end;
ProgressForm.Close;
End;
← →
Anatoly Podgoretsky © (2003-05-17 15:43) [4]Readln в цикле
Страницы: 1 вся ветка
Текущий архив: 2003.05.29;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.026 c