У меня не получается корректно отлавливать конец файла при чтении строк. В инструкции к MD сказано, что если конец файла достигнут, то оператор ReadLine возвращает пустую строку. Вот примерно как я делаю:
res := OpenResource(fname);
if ResourceAvailable(res) then
begin
repeat
line := ReadLine(res);
if line='' then break; // Отлавливаем конец файла
// Тут что-то делаем со строками
until (FALSE);
end;
CloseResource(res);
Но данный код не работает. При чтении программа зависает.
Приходится в файл вконце писать признак конца файла, например символ # и строку выхода заменить на if line = '#' then break; тогда всё замечательно работает. Я тут не пойму это глюк MD или я что-то не так делаю. Просветите меня как правильно определять конец файла.