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

Вниз

Что-то вроде Ini-файла   Найти похожие ветки 

 
GreySerg   (2002-03-18 17:49) [0]

Есть файл (созданный в любом текстовом редакторе)такого вида:



[Base]
Path=MyPath;
username=myusername;
password=mypassword;
[Query]
Text=Query
for my Base;




Он похож на ini-файл, только значение параметра м.б. на нескольких строчках, и разделяются они между собой ;.

Мне нужно просто читать значения из этого файла.

Подскажите, как лучше сделать, изменить структуру TIniFile или создать свой собственный класс или просто написать функцию для чтения такого файла.
Может быть у кого есть готовые решения - пожалуйста, помогите кодом . Время поджимает просто.


 
USAtyj ©   (2002-03-18 18:44) [1]

Работай как с ини-файлом, тока при записи данных многострочных символ перехода на новую строку заменяй на "|", например, а при считывании - обратно.

[Base]
Path=MyPath;
username=myusername;
password=mypassword;
[Query]
Text=Query|for my Base;


 
MAxiMum ©   (2002-03-18 19:23) [2]

А ты сам подумай. Нафиг тебе параметр Text. Чиатй сразу раздел Query и записывай туде соответственно с помощью Read/Write|Section.


 
GreySerg   (2002-03-19 12:34) [3]

> USAtyj ©
Такой вариант мне не подходит, так я могу сделать свой редактор и вообще обойтись без | (просто писать в одну строку и анализировать её при считывании)
> MAxiMum ©
при считывании всего раздела, считываются только строки вида
Parameter = Value , т.е. данный способ тоже не работает


 
Виктор Щербаков ©   (2002-03-19 12:39) [4]

ReadSectionValues


 
GreySerg   (2002-03-19 12:55) [5]

> Виктор Щербаков ©
Вообще-то ReadSectionValues не совсем то, что нужно (обязательно надо чтобы в секции была конструкция вида Parameter = Value, иначе ничего не считает), но подойдёт.
Спасибо.



 
GreySerg   (2002-03-19 13:12) [6]

Извините, сделал поспешные выводы, обязательно надо чтобы в секции на каждой строке была конструкция вида Parameter = Value , иначе строку не считает (мне это не нужно)
Придёться видно писать свой обработчик такого файла (((:


 
DieHard ©   (2002-03-19 16:17) [7]

А если попробовать считать файл в List:TStringList как есть, а затем преобразовать значения, разбитые на несколько строчек например так:
Text=Query;
for my Base
=>
TextCount=2
Text1=Query
Text2=for my Base

После этого создать объект
MemIni:=TMemIniFile.Create("");
И загрузить в него полученные строки
MemIni.SetStrings(List);
Далее работай, как с обычным Ini-файлом, считывая значение параметра Text в цикле от 1 до TextCount из параметров с именами Text1...TextN (N=TextCount)



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

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

Наверх




Память: 0.48 MB
Время: 0.011 c
3-64465
Somebody
2002-04-24 16:14
2002.05.20
Сортировка


1-64635
Dyacha
2002-05-08 12:46
2002.05.20
как можно реализовать печать книжкой


1-64741
Gnom
2002-05-07 10:45
2002.05.20
TWordApplication - Поможите!!!


3-64544
Glonia Zbanov
2002-04-24 11:05
2002.05.20
поиск MSSQL


4-64860
chernoruk
2002-03-14 20:20
2002.05.20
Вопрос о RasDial(...@CallBackFunction...)