Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.05.13;
Скачать: CL | DM;

Вниз

Access violation at address ....   Найти похожие ветки 

 
Wolfezz   (2002-04-27 17:49) [0]

Почему в этом коде вознгикает такая ошибка?
procedure TForm1.BitBtn2Click(Sender: TObject);
var a,b:tstrings; i:integer;
begin
if r2.Checked=true then begin
for i:=0 to (memo1.lines.count div 2)-1 do
a.Add(memo1.Lines[i]);
for i:=(memo1.lines.count div 2)-1 to memo1.lines.count do
b.Add(memo1.Lines[i]);
a.SaveToFile(form2.edit1.text);
b.SaveToFile(form2.edit2.text);
a.clear;
b.clear;
end; end;


 
olookin ©   (2002-04-27 17:51) [1]

Вместо
for i:=(memo1.lines.count div 2)-1 to memo1.lines.count do
b.Add(memo1.Lines[i]);

нужно писать

for i:=(memo1.lines.count div 2)-1 to memo1.lines.count-1 do
b.Add(memo1.Lines[i]);


 
Wolfezz   (2002-04-27 18:02) [2]

Да, не заметил ошибки, но она в данном случае не играет роли. В моем случае выделяется сначала строка
a.Add(memo1.Lines[i]);


 
Anatoly Podgoretsky ©   (2002-04-27 18:20) [3]

Нет создания объектов, кроме того tstrings не предназначен для хранения данных, это базовый класс.


 
Wolfezz   (2002-04-27 18:30) [4]

А как тогда поступать в моем случае?? (Я думаю задача из данного кода вполне ясна)


 
Ally ©   (2002-04-27 18:41) [5]

Ну, например, вот как:


procedure TForm1.BitBtn2Click(Sender: TObject);
var
a,b: TStringList;
I:integer;

begin
a := TStringList.Create;
try
b := TStringList.Create;
try
if r2.Checked=true then
begin
for i:=0 to (memo1.lines.count div 2)-1 do
a.Add(memo1.Lines[i]);
for i:=(memo1.lines.count div 2)-1 to memo1.lines.count - 1 do
b.Add(memo1.Lines[i]);
a.SaveToFile(form2.edit1.text);
b.SaveToFile(form2.edit2.text);
a.clear;
b.clear;
finally
b.Free;
end;
finally
a.Free;
end;
end;
end;


Удачи.


 
Wolfezz   (2002-04-27 18:59) [6]

Большое спасибо!
А не подскажите ли еще, как ускорить этот процесс, а то на моем компе файл в сорок тысяч строк обрабатывается довольно таки долго...



Страницы: 1 вся ветка

Текущий архив: 2002.05.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.008 c
7-39868
Konsul
2002-02-15 12:31
2002.05.13
Пуск-Программы


1-39705
VID
2002-04-29 16:56
2002.05.13
Сканирование всех компонентов в форме (юните) чужого приложения


3-39682
Chainik
2002-04-17 11:02
2002.05.13
компоненты ODAC/DAO для Oracle


14-39834
alexandervasjuk
2002-04-02 15:16
2002.05.13
Помни имя своё, Delphi


1-39778
~DR~
2002-04-28 20:48
2002.05.13
STRINGGRID