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

Вниз

Работа с TStringList   Найти похожие ветки 

 
Berg   (2003-02-28 16:23) [0]

Есть большой текстовый файл, необходимо читать в нем до определенного знака (###) и прочитанную часть обрабатывать, сначала загоняю его в TStringList, потом пыытаюсь с помощью Pos
найти ###, но Pos=0 во всех строках, хотя если указываю #, то тогда находит. Помогите разобраться, может у кого-нибудь есть пример.Спасибо!


 
Переяслов Григорий ©   (2003-02-28 16:25) [1]

А пример?


 
MBo ©   (2003-02-28 16:27) [2]

>до определенного знака (###)
это как? все три диеза читаешь или нет?


 
Berg   (2003-02-28 16:32) [3]

L1:=TStringList.Create;
L2:=TStringList.Create;
if OpenDialog1.Execute then
begin
L1.LoadFromFile(OpenDialog1.FileName);
while Pos("###",L1.Strings[i])<>0 do
begin
L2.Insert(i, L1.Strings[i]);
Inc(i);
end;
end;
...
L1.Free;
L2.Free;



 
Berg   (2003-02-28 16:34) [4]

>>MBo © (28.02.03 16:27)
Да, ### - это такой разделитель в тексте


 
Jel ©   (2003-02-28 16:37) [5]


> while Pos("###",L1.Strings[i])<>0 do
>

Pos будет не равна 0 если "###" найдено в строке.
Следовательно строки в которых нет "###" в список L2 не попадут.


 
Anatoly Podgoretsky ©   (2003-02-28 16:37) [6]

=0


 
Berg   (2003-02-28 16:46) [7]

Cтроки с ### в L2 не нужны, а ошибка та же все равно "List index of bounds (19806240)"


 
Anatoly Podgoretsky ©   (2003-02-28 16:49) [8]

Неправильный i


 
Hint ©   (2003-02-28 16:50) [9]

Правильно Anatoly Podgoretsky рожицу скорчил...
Где проверка на выход из диапазона?!
Вроде такой

while Pos("###",L1.Strings[i])<>0 do
begin
L2.Insert(i, L1.Strings[i]);
Inc(i);
if i = L1.Count - 1 then Break;
end;

И неполохо бы перед циклом i проинициализировать, а то мало ли чего там будет перед циклом...


 
icWasya ©   (2003-02-28 16:52) [10]

L1.LoadFromFile(OpenDialog1.FileName);
for i:=0 to L1.Count-1 do
if Pos("###",L1[i])<>0 then
L2.Add(L1[i]);


 
han_malign ©   (2003-02-28 17:08) [11]

Дежавю ;^/, только в прошлом году "##" кажется было...


 
Anatoly Podgoretsky ©   (2003-02-28 20:09) [12]

han_malign © (28.02.03 17:08)
А в позапрощлом "#", растут знания растут и запросы



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

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

Наверх




Память: 0.49 MB
Время: 0.022 c
1-39278
radion
2003-03-03 18:44
2003.03.13
по поводу ки-логгера


1-39365
aade
2003-03-02 15:30
2003.03.13
Добавление в меню


6-39448
oleg_poligon
2003-01-25 00:38
2003.03.13
Web Server Application


7-39609
Mike-Keeper
2003-01-19 11:42
2003.03.13
Программирование видеокамеры


6-39431
Axis_of_Evil
2003-01-22 14:33
2003.03.13
Site