Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   в чем причина? (http://forum.oszone.net/showthread.php?t=168005)

bomberman 20-02-2010 16:22 1351974

в чем причина?
 
type user=record
..
end;
var people:file of user;
begin
...
assignfile(people,'bd.txt ');
append(people); {здесь ошибка, но почему }

pva 20-02-2010 16:32 1351984

Цитата:

Цитата bomberman
assignfile(people,'bd.txt '); »

может из-за пробела в конце названия файла?

bomberman 20-02-2010 16:36 1351986

нет дело не в этом, можеть структура не правильно построена у меня, не знаю....

говорит что Incompatible types т.е несовместные типы, но почему?

BlackEric 21-02-2010 02:39 1352365

1. Попробуйте описать тип как packed record
2. Если не поможет, то показываете полные сорцы

pva 21-02-2010 11:55 1352470

http://www.codenet.ru/progr/delphi/O...scal/files.php
Цитата:

Procedure Append(var F: Text);
Открывает существующий текстовый файл для добавления информации в конец файла (дозаписи).

Если внешнего файла с данным именем не существует, происходит ошибка времени выполнения.

Если файл F уже открыт, он закрывается и вновь открывается. Текущая позиция файла устанавливается к концу файла.
потому что file of user не является текстовым файлом
bomberman, надо сразу сообщать что ругается на этапе компиляции, и приводить текст ругательства. Попробуй сделать так:
Код:

Seek(people, FileSize(people)); // вместо Append
колдлвать с packed record не надо

Serega 21-02-2010 20:58 1352811

Цитата:

Цитата bomberman
{здесь ошибка, но почему } »

Цитата:

Цитата bomberman
говорит что Incompatible types »

Так открывать нужно текстовый файл, следовательно и писать нужно, так:
Код:

procedure ReadTextFile(const FileName: string);
var
  in_file: TextFile;
begin
  AssignFile(in_file, FileName);
  Append(in_file);
  WriteLn(in_file, 'Заключительная строка.');
  CloseFile(in_file);
end;

Также, почитать с примером можете здесь.


Время: 03:50.

Время: 03:50.
© OSzone.net 2001-