![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
при сохранении строк в текстовый файл последняя строка обрезается. я не могу понять в чем дело.
Код:
procedure TForm1.btn5Click(Sender: TObject);
var
cell:integer;
v:TextFile;
i,j:Integer;
begin
if Save1.Execute then
AssignFile(v,Save1.FileName);
Rewrite(v);
for i:=0 to lst2.Count-1 do begin
cell:=0;
for j:=0 to lst1.count-1 do begin
if lst2.Items.Strings[i]=lst1.Items.strings[j] then
inc(cell);
Application.ProcessMessages();
end;
if cell=0 then
writeln(v,lst2.Items.Strings[i]);
pb1.Position:=Round((i+1)*100/lst2.Count);
end;
Application.MessageBox(' Завершено ', 'Служебное сообщение');
pb1.Position:=0;
end;ниже фрагмент файла с ошибкой: ............................................... 5041_130305_122621.sgy 5041_130305_123705.sgy 5041_130305_124235.sgy 5041_130 |
|
#2
|
||||
|
||||
|
Посмотрите содержимое lst2.Text например, передав его в мемо.
|
| Этот пользователь сказал Спасибо Alegun за это полезное сообщение: | ||
Tonyy (21.05.2013)
| ||
|
#3
|
|||
|
|||
|
А кто закрывать файл будет. Скорее всего, просто из буффера не записалось на диск.
|
| Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Tonyy (21.05.2013)
| ||
|
#4
|
|||
|
|||
|
да, действительно. надо было закрыть файл. большое спасибо
|
|
#5
|
||||
|
||||
|
Хотите принудительно сохранить, используйте Flush.
|