Страница 1 из 4
Работа с файлом
Добавлено: 06 апр 2008, 19:00
scudo
В текстовом файле хранится список служащих. Для каждого служащего указаны фамилия и инициалы, название занимаемой должности, год поступления на работу и оклад.
Написать программу, выполняющую следующие действия:
-----корректировку или дополнение списка с клавиатуры;
Re: Работа с файлом
Добавлено: 06 апр 2008, 19:55
MOTOCoder
А в чем проблема?
Например для дополнения достаточно прочитать новую строку с клавиатуры и дописать её в файл процедурой Append.
Re: Работа с файлом
Добавлено: 06 апр 2008, 20:02
scudo
Пишу так, и чет не выходит:
var
spis_sl:file of string;
spis:String;
Begin
Assign(spis_sl,'...\spisok_sluzh.txt');
Rewrite(spis_sl);
Write(spis_sl,spis);
Close(spis_sl);
Re: Работа с файлом
Добавлено: 06 апр 2008, 20:05
scudo
Rewrite в даном случае по моему не нужен
Re: Работа с файлом
Добавлено: 06 апр 2008, 20:20
MOTOCoder
Во-первых: куда указывает данный путь ...\spisok_sluzh.txt?
Во-вторых, rewrite или reset всегда нужен, только добавлять данные в файл нужно не процедурой write, а процедурой Append.
Re: Работа с файлом
Добавлено: 06 апр 2008, 20:22
scudo
var
spis_sl:file of string;
spis:String;
Begin
Assign(spis_sl,'...\spisok_sluzh.txt');
Reset(spis_sl);
Read(spis_sl.spis);
Даже не открывает его для чтения (не показывает информацию с текстового файла на экране)
Re: Работа с файлом
Добавлено: 06 апр 2008, 20:23
scudo
Assign(spis_sl,'с:\1\spisok_sluzh.txt');
Re: Работа с файлом
Добавлено: 06 апр 2008, 20:30
MOTOCoder
Как минимум, имя файла слишком длинное-нужно не более 8 символов.
Re: Работа с файлом
Добавлено: 06 апр 2008, 20:40
scudo
var
spis_sl:file of string;
spis:String;
Begin
Assign(spis_sl,'с:\1\spisok.txt');
Reset(spis_sl);
Read(spis_sl.spis);
Писал и так. При етом менял и имя текстового файла. Программа запускается.Но отрабатывает слишком быстро. Смотрю по Alt+F5 ничего нет
Re: Работа с файлом
Добавлено: 06 апр 2008, 21:00
MOTOCoder
Попробуйте написать так:
[syntax='Delphi']
var
F:text;
s:string;
begin
Assign(F,'C:\1\spisok.txt');
Reset(F);
Readln(F,S);
Close(F);
writeln(S);
readln;
end.
[/syntax]