28.01.2008, 12:57 | #1 |
Участник
|
Вот такая ситуация:
Мне надо загрузить в таблицу данные с txt файла для этого сделал: f.TEXTMODE(TRUE); f.OPEN(CommonDlgMgt.GetPath + CommonDlgMgt.GetFileName); f.CREATEINSTREAM(StreamInObj); i := 1; WHILE NOT (StreamInObj.EOS()) DO BEGIN StreamInObj.READTEXT(buffer); s:=Explode(buffer,2); //это второе поле из файла rsHeader."Sell-to Customer No." := s; //присудил этому полю второе поле из буфера MESSAGE('Line No. %1 %2', i , buffer); i:=i+1; END; f.CLOSE(); END; END; А обработка строки такое:: Функция Explode FOR i:=1 TO Number DO BEGIN s:=COPYSTR(Buffer,1,STRPOS(Buffer,';')-1); Buffer:=COPYSTR(Buffer,STRPOS(Buffer,';')+1); END; вот тут какая то ошибка при загрузке выходит ошибка : Значение COPYCTR параметра 3 находится за пределами разрешенного интервала текущее значение -1 Разоешенный интервал от 0...235346457 |
|