![]() |
|
|
#1
|
|||
|
|||
|
Здравствуйте!! помогите составить программу которая создает файл ’F1.DAT’ из 10 элементов типа Integer. Выведите его на экран. Удалите последние пять элементов и выведите его содержимое на экран.(на форме 2 кнопки "Создать" и "Удалить", и Memo в которое выводятся числа). Ребят выручайте! Заранее благодарен!
|
|
#2
|
||||
|
||||
|
Задача не проста, а ОЧЕНЬ проста. Каков ваш код?
|
|
#3
|
|||
|
|||
|
Мой код к сожалению не правилен, прогрмма работает но не по нужному алгаритму(нужно было использовать Assignfile и подобные процедуры для работы с файлами в делфи), можете предложить свой вариант?
вот код Код:
procedure TForm9.Button1Click(Sender: TObject);
var
List:TStringList;
i:integer;
begin
List:=TStringList.Create;
Randomize;
for i:=1 to 10 do
List.Add(IntToStr(Random(100)));
List.SaveToFile('C:\Новая папка\F1.DAT');
Elements.Lines.LoadFromFile('C:\Новая папка\F1.DAT');
end;
procedure TForm9.Button2Click(Sender: TObject);
var
List:TStringList;
i:integer;
begin
List:=TStringList.Create;
List.LoadFromFile('C:\Новая папка\F1.DAT');
for i:=1 to 5 do
List.Delete(5);
Elements.Lines:=List;Последний раз редактировалось lmikle, 09.01.2012 в 22:48. |
|
#4
|
||||
|
||||
|
После того как вы привели свой код, могу:
Код:
// создание файла и вывод в Memo
var
F : TextFile;
I, J : Integer;
begin
Memo1.Clear;
Randomize;
{$I-}
AssignFile(F, 'f1.dat');
ReWrite(F, 1);
for I := 0 to 9 do
begin
J := Random(100);
WriteLn(IntToStr(J));
Memo1.Lines.Add(IntToStr(J));
end;
CloseFile(F);
{$I+}
end;
// чтение файла и вывод в Memo
var
F : TextFile;
I : Integer;
S : String;
begin
Memo1.Clear;
{$I-}
AssignFile(F, 'f1.dat');
Reset(F, 1);
for I := 0 to 4 do
begin
ReadLn(S);
Memo1.Lines.Add(S);
end;
CloseFile(F);
{$I+}
end; |
|
#5
|
|||
|
|||
|
В какую папку сохраняется файл??
|
|
#6
|
|||
|
|||
|
ReWrite(F, 1);
в этом месте ругается (Too many actual parameters- вот такую ошибку выдает).Не могли бы вы проверить код на работоспособность ??? |
|
#7
|
||||
|
||||
|
Сохраняется в папку проекта.
Писал по памяти мог и ошибиться. Угу, для TextFile нужно просто ReWrite(F). |
|
#8
|
|||
|
|||
|
Почему то при нажатии кнопки "удалить" из мемо удаляются все элементы а не последние 5?
|
|
#9
|
||||
|
||||
|
Первая процедура создаёт 10 рандомных чисел и сохраняет в файл, вторая читает 5 значений и грузит их в Memo. Обе процедуры предварительно очищают Memo.
|
|
#10
|
|||
|
|||
|
мне нужно чтобы 5 чисел выводилось в мемо т.е их должно быть видно а при нажатии на кнопки "Удалить " у меня мемо пустое
|
|
#11
|
||||
|
||||
|
Код:
// чтение файла и вывод в Memo
var
F : TextFile;
I : Integer;
S : String;
begin
Memo1.Clear;
{$I-}
AssignFile(F, 'f1.dat');
Reset(F, 1);
for I := 0 to 4 do
begin
ReadLn(S);
Memo1.Lines.Add(S);
end;
CloseFile(F);
{$I+}
end; |
|
#12
|
|||
|
|||
|
Вот программа убедитель в том что 5 элементов не выдает в мемо
|
|
#13
|
||||
|
||||
|
Говорю же, писано на коленке. Мог бы и в справку заглянуть.
Код:
...
WriteLn(F, IntToStr(J));
...
...
ReadLn(F, S);
... |
|
#14
|
|||
|
|||
|
Спасибо огромное!!!Вы меня реально выручили!!! Вы даже не представляете как я Вам благодарен!!!
|