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

Вниз

Использовать ini для процедуры сравнения   Найти похожие ветки 

 
Garacio ©   (2007-01-17 16:36) [0]

Вопрос очень сложный: я хочу использовать файл .ini для двухкратного изменеия значения переменной. Т.е., в файле .ini, допустим, будет записано:
x1, x2 | y1
z1, z2 | y2
... (где "|" и "," - разделители)
а в коде программы, соответственно:
if Peremennaya=(x1 or x2) then Peremennaya:=y1;
if Peremennaya=(z1 or z2) then Peremennaya:=y2;

смысл такой! Как реализовать это по-проще?


 
Джо ©   (2007-01-17 16:45) [1]

А в чем конкретно затруднение?


 
novill ©   (2007-01-17 16:46) [2]

Проще всего будет если вы НОРМАЛЬНО запишите в ini файл свои переменные , а не

> x1, x2 | y1
> z1, z2 | y2


тогда и считывать будет просто


 
Rial ©   (2007-01-17 17:22) [3]

tmpStr:=ReadString(..);
P1:=Pos(",", tmpStr);
P2:=Pos("|", tmpStr);
If (Value = StrToXXX(Copy(tmpStr, 1, P1 - 1)))or
  (Value = StrToXXX(Copy(tmpStr, P1 + 1, P2 - P1 - 1))) then
Value:=StrToXXX(Copy(tmpStr, P2 + 1, Length(tmpStr) - P2));


 
Garacio ©   (2007-01-18 08:59) [4]

Да-а, Rial, разобраться бы ещё в написанном ;-)


 
novill ©   (2007-01-18 09:14) [5]

> [4] Garacio ©   (18.01.07 08:59)

поэтому
в ини-файле напиши просто
x1=...
x2=...
y1=...
...
и с помощью readinteger их считывай.


 
ЮЮ ©   (2007-01-18 09:46) [6]

x1, x2 | y1
z1, z2 | y2
if Peremennaya=(x1 or x2) then Peremennaya:=y1;
if Peremennaya=(z1 or z2) then Peremennaya:=y2;
смысл такой! Как реализовать это по-проще?


Смотря сходу не читается :) У меня, по-крайней мере, возникла пара разных толкований.

Лучше четко изложи мысль, ЧТО должно выполниться, при наличии, а что при отсутствии строки
x1, x2 | y1
и что изменится, если строка будет
x1, x2 | y2

И, наконец, что хотел получить, пытаясь это ревлизовать.


 
Garacio ©   (2007-01-18 11:00) [7]

Книга продаётся сразу в нескольких томах (x1, x2 - названия томов), но в накладной они записываются, как "y1". Соответственно, для того чтобы проверить наличие "x1" или "x2", мне необходимо проверить по накладной - пришло ли "y1"! (т.е. "x1"="y1" и "x2"="y1") Моя проблема - нельзя присвоить одной переменной "y1" два значения, и я надеюсь решить её с помощью .ini и цикла, в котором перебираются значения. Почему .ini? - "книги" появляются новые, пропадают старые, и менять каждый раз из-за этого код - не выход!


 
Сергей М. ©   (2007-01-18 11:05) [8]


> Garacio ©   (18.01.07 11:00) [7]


Это что за книжный микроларек такой, что весь его товар можно учитывать с помощью ini-файла ?)

Любую подходящую СУБД использовать для этой цели не приходило в голову ?


 
ЮЮ ©   (2007-01-18 11:13) [9]


>  пропадают старые, и менять каждый раз из-за этого код -
>  не выход!

Да уж, бесконечный поддержка приложения :)

Используй ini по полной схеме:

[y1]
1=X1
2=X2
[y2]
1=XX1
2=XX2
3=XX3


 
Garacio ©   (2007-01-18 11:28) [10]

"Книги"-это для примера, суть - таже!
[y1]
1=X1
2=X2
[y2]
1=XX1
2=XX2
3=XX3

Выглядит красиво! А как работает?
P.S. СУБД не нужна? У меня таких (x1, x2 | y1) строчек будет всего 5-6.


 
ЮЮ ©   (2007-01-18 11:30) [11]

[y1],  [y2] - это Section в методах чтения TIniFile. Их список TIniFile тоже дает.


 
Garacio ©   (2007-01-18 11:32) [12]

Чтож, ЮЮ, спасибо! Буду пытаться!



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

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

Наверх




Память: 0.49 MB
Время: 0.051 c
2-1168785489
azl
2007-01-14 17:38
2007.02.04
Click по приложению


1-1165648879
Medved_
2006-12-09 10:21
2007.02.04
Brush


2-1168994214
M1sT
2007-01-17 03:36
2007.02.04
Поиск по файлам, типа *.xls, *.mdb, *.dbf


2-1167921634
paradox
2007-01-04 17:40
2007.02.04
Soedenenie s BD


15-1168892874
@!!ex
2007-01-15 23:27
2007.02.04
редактор ТЕХа