Ниже приведен пример из проекта системы предварительного просмотра файлов, над которым я работаю. В основной форме есть два списка. Первый, [lst_fileList], отображает список всех файлов «.txt» в каталоге [files], каждый из которых помечен [order ###. Txt], причем ### - любое число от 1 до 999. Когда процедура выполняется, он находит выбранный элемент в списке, (файл .txt), а затем отображает каждую отдельную строку из файла во втором ListBox [lst_filePreview].Ошибка Delphi: получил «нетипизированный», ожидаемый «AnsiString»
Хотя, когда я запускаю его, на 21-й строке в ReadLn (selectedFile) возникает ошибка. Состояние ошибки (Несовместимый тип: Got «нетипизированный», ожидаемый «AnsiString»).
Я изучил эту ошибку в течение нескольких часов, безрезультатно ... Любая помощь будет оценена, спасибо.
procedure TForm1.btn_getPreviewClick(Sender: TObject);
var
checkSelect:integer;
orderSelect:string;
i:integer;
selectedFile:textFile;
begin
if lst_fileList.SelCount > 0 then
begin
for checkSelect:= 0 to (lst_fileList.Items.Count - 1) do
if lst_fileList.Selected [checkSelect] then
begin
orderSelect:=lst_fileList.Items[checkSelect];
orderSelect:=RightStr(orderSelect,3);
if fileexists('files\order'+orderSelect+'.txt') then
begin
assignFile(selectedFile,'files\order'+orderSelect+'.txt');
reset(selectedFile);
while not EOF(selectedFile) do
begin
lst_filePreview.Items.Add(readLn(selectedFile)); // Error occurs here: //
end;
closeFile(selectedFile);
end;
end;
end else
ShowMessage('Please select an item first!');
end;
В вопросе я вижу, он объявлен как "Textfile". –