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

Вниз

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

 
KyRo   (2006-03-15 10:27) [0]

Подскажите почему может при загрузке из файла данных  в список
у меня теряется первый символ каждой строки

//Читаем значение списка файлов
  ListFile.LoadFromFile("fn.tmp");

FileName:= ListFile.ValueFromIndex[i];
      Ini.WriteInteger(FileName,"ProcesID",0);


 
Сергей М. ©   (2006-03-15 10:32) [1]

Как это "теряется" ? На основании чего сделан такой вывод ?
Поясни ..


 
Ega23 ©   (2006-03-15 10:32) [2]


> ValueFromIndex[i];


Чё это за метод такой странный???


 
Dmitrij_K   (2006-03-15 10:33) [3]

Что находится в файле fn.tmp?
Определил .Delimiter?


 
Dmitrij_K   (2006-03-15 10:34) [4]

Построчно файл читается так
StringList[0]
StringList[1]
...


 
clickmaker ©   (2006-03-15 10:37) [5]


> Ega23 ©   (15.03.06 10:32) [2]
>
> > ValueFromIndex[i];
>
>
> Чё это за метод такой странный???

наверно это в Д2003 аналог Values[Name], но по индексу


 
KyRo   (2006-03-15 11:10) [6]


> наверно это в Д2003 аналог Values[Name], но по индексу

нет это делфи 7 -й

В файле находится следующее

D:\tmplog\edclocal(14).dat
D:\tmplog\edclocal(6).dat
D:\tmplog\edclocal(7).dat
D:\tmplog\edclocal(8).dat
D:\tmplog\edclocal(9).dat
D:\tmplog\edclocal(10).dat
D:\tmplog\edclocal(11).dat
D:\tmplog\edclocal(12).dat
D:\tmplog\edclocal(13).dat


я считываю список этих строк в стринг лист
а потом формирую ини файл с настройками вот таким образом


 For i:= 0 to ListFile.Count -1 do
   Begin
      FileName:= ListFile.ValueFromIndex[i];
      Ini.WriteInteger(FileName,"ProcesID",0);
      Ini.WriteString(FileName,"ProcesStatus","Null");
      Ini.WriteString(FileName,"StatusOp","Wake");
      end;


На выходе получаю ини файл


[:\tmplog\edclocal(14).dat]
ProcesID=0
ProcesStatus=Null
StatusOp=Wake
[:\tmplog\edclocal(6).dat]
ProcesID=0
ProcesStatus=Null
StatusOp=Wake
[:\tmplog\edclocal(7).dat]
ProcesID=0
ProcesStatus=Null
StatusOp=Wake


И вот в нем первого символа в каждой строке переданой из списка нет !!!
Почему это может быть не пойму.


 
KyRo   (2006-03-15 11:12) [7]

List.Strings[i]; щас попробую так может тот метод с глюком


 
Ega23 ©   (2006-03-15 11:17) [8]


> так может тот метод с глюком


Я в этом ОЧЕНЬ СИЛЬНО сомневаюсь.


 
Плохиш ©   (2006-03-15 11:21) [9]


> KyRo   (15.03.06 11:12) [7]
> List.Strings[i]; щас попробую так может тот метод с глюком

Просто у кого-то проблемы с логикой и нет желания читать документацию.


 
KyRo   (2006-03-15 11:22) [10]

Проверил
List.Strings[i]; дает нормальный результат на выходе получаю

D:\tmplog\edclocal(5).dat

А метод
ListFile.ValueFromIndex[i];
тоже самое выдает


> :\tmplog\edclocal(5).dat

Из за чего это может быть понятия не имею !!!


 
KyRo   (2006-03-15 11:23) [11]


> Просто у кого-то проблемы с логикой и нет желания читать
> документацию.

Что ты имееш в виду ?


 
clickmaker ©   (2006-03-15 11:24) [12]


> KyRo   (15.03.06 11:12) [7]

function TStrings.GetValueFromIndex(Index: Integer): string;
begin
 if Index >= 0 then
   Result := Copy(Get(Index), Length(Names[Index]) + 2, MaxInt) else
   Result := "";
end;


 
Ega23 ©   (2006-03-15 11:24) [13]


> Что ты имееш в виду ?


Что прежде чем обвинять метод в глючности, надо бы сначала справку по нему почитать.


 
Сергей М. ©   (2006-03-15 11:25) [14]


> KyRo


Метод ValueFromIndex имеет смысл только для списка строк, каждая из которых имеет структуру

NAME=VALUE

А твои строки по структуре не соответствуют этому требованию


 
Ega23 ©   (2006-03-15 11:26) [15]


> clickmaker ©   (15.03.06 11:24) [12]


А справку по методу можешь выложить? А то у меня D5.


 
clickmaker ©   (2006-03-15 11:33) [16]


> Ega23 ©   (15.03.06 11:26) [15]

Represents the value part of a string with a given index, on strings that are name-value pairs.

Delphi syntax:

property ValueFromIndex[Index: Integer]: string;

C++ syntax:

__property AnsiString ValueFromIndex[int Index] = {read=GetValueFromIndex, write
=SetValueFromIndex};;

Description

When the list of strings for the TStrings object includes strings that are name-value pairs, use ValueFromIndex to get or set the value part of a string associated with an index.

For more information on name-value pairs, refer to the NameValueSeparator property.

Но по коду и так всё ясно )


 
Ega23 ©   (2006-03-15 11:44) [17]


> Но по коду и так всё ясно )


Не совсем было понятно, почему +2 и что за Names.
Теперь, конечно, всё ясно...  :о)



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

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

Наверх




Память: 0.48 MB
Время: 0.042 c
3-1139464324
Bambino
2006-02-09 08:52
2006.04.02
Вызов диалога настройки подключения к серверу через ADO?


2-1142436458
ctudent
2006-03-15 18:27
2006.04.02
Помогите разобраться!


15-1142262298
Новичоккк
2006-03-13 18:04
2006.04.02
Вопрос по PHP (Array)


15-1142109549
Eraser
2006-03-11 23:39
2006.04.02
AOL opens AIM code to developers


15-1142229826
Некто
2006-03-13 09:03
2006.04.02
Полезные физические упражнения





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский