delphi TStringList.ValueFromIndex обрезает первую букву

Тема в разделе "ASM, С/С++, Delphi, Java", создана пользователем jabbaxatt, 24 мар 2015.

Статус темы:
Закрыта.
  1. jabbaxatt

    jabbaxatt Добрый модератор

    Moderator
    Регистр.:
    21 янв 2009
    Сообщения:
    878
    Симпатии:
    411
    То ли лыжи не едут то ли я.....

    Загружаем текстовый файл (с HTML кодом) в строковую переменную.
    TStringList.ValueFromIndex режет в каждой строке первый символ.

    Код:
    Ishodnik:=TStringList.Create;
    Ishodnik.LoadFromFile(filename);
    for j:=0 to Ishodnik.Count-1 do
    begin
        MyStr:=MyStr+Ishodnik.ValueFromIndex[j];
    end;
    Ishodnik.Free;
    
    
    Т.е. в текстовом файле все символы есть, смотрю в блокноте.
    А в IshodnikKonkurent.ValueFromIndex[j] - первый символ строки отсутствует. Почему - не понятно.

    Задача стоит - считывать HTML код из текстового файла в строку и при необходимости в массив строк(TStringList)
     
  2. jabbaxatt

    jabbaxatt Добрый модератор

    Moderator
    Регистр.:
    21 янв 2009
    Сообщения:
    878
    Симпатии:
    411
    Это я ебанутый :(

    Зачем начал использовать
    Ishodnik.ValueFromIndex[j];
    вместо логичного тут Ishodnik[j];

    P.S.
    Ishodnik.ValueFromIndex[j]; рассчитана на применение в том случае когда строки списка выглядят как name=value. В противном случае она имеет некий особый алгоритм. Если Вам интересно, добавьте 2 мемо на форму и выведите в первый сами строки из вашего стринглиста, а во второй значения ValueFromIndex для этих строк. И сравните.
     
Статус темы:
Закрыта.