Привожу вам текст о работе с ini-файлами.
Автор текста - Rush. Я просил его сделать из этого статью,
но в статью, к сожалению, так и не переросло.
Тем не менее, изложенное ниже представляется мне
весьма ценным и может оказаться полезным для многих.
____________________________________________________________ Если хочешь получить значение переменных ини-файла без заголовков, то
напиши такой скрипт:
(к примеру, ты захотел из text.ini вытащить значения в 10 переменных)
Code
N=0
ini$='<SrcDir>\data\text.ini'
For i=1 To NOL(ini$)
string$=StrFromFile(ini$,i,1)
If (POS(=,string$)<>0 & string$<>'') Then
N=N+1
pos=POS(=,string$)
txt$[N]=StrDel(string$,1,pos)
End
Next i
Это универсальный по длине файла скрипт, для любой длины
заголовков - хоть 1 знак, хоть 20 - ему без разницы.
Переменная N и блок If...End нужны для того, чтобы не считывались
и не создавали переменных txt$ пустые строки и строки без заголовков.
Правда для твоего конкретного случая лучше написать не
If (POS(=,string$)<>0 & string$<>'') Then
а
If (POS(txt,string$)=1) Then
поскольку все заголовки начинаются с txt и считывать нужно только их.
Более того - если у тебя в ини-файле хранится нужная переменная
под заголовком, например, МояПеременная=, то написав
Code
ini$='<SrcDir>\data\text.ini'
For i=1 To NOL(ini$)
string$=StrFromFile(ini$,i,1)
If (POS(МояПеременная=,string$)<>0) Then
MyText$=StrChange(string$,МояПеременная=,'')
End
Next i
ты загрузишь в переменную MyText$ нужную тебе строку, даже когда не знаешь
под каким номером строки она находится в файле. Это я обдумал в свое время для того,
чтобы находить нужный параметр, даже если пользователь правил ини-файл
вручную и попутал строки.
Вот почему я так настоятельно тебе про заголовки говорю - чтобы не зависеть
от номера строки, а считывать именно нужный тебе параметр.
Вообще, стандартный ини-файл состоит из:
1) Секция
2) Ключ
3) Значение
Секция обозначается через квадратные скобки. Например, [General].
Ключ (я называл его заголовком) вот таким образом - MyKey=
А значение - это все, что находится в строке после ключа.
Пример ини-файла (пустые строки не важны, их можно и убрать):
[1]
1=один
2=два
3=три
[2]
1=101
2=102
3=103
[3]
1=совсем один
2=пара
3=еще больше
Продолжение ниже...