Q&A

  • ini 파일에서 키값가져오기
ini파일을 이용하여 아래와 같이 파일을 만들었는데

이파일을 open했을때 각 component로 이값을 가져올려니까 잘 안되네요

부탁좀 드립니다



=====ini 파일에 섹션,키, 키값넣기=======================



f:TINifile;

f_data,tit,des,outfile: string;

EI,GAMS,GAMW,COMF1,COMF2,COMF3,COMF4:string; {form3}

NI,NJ,HEIGHT,D1,DV,DH,DELT,TLENGTH,P,DN:string; {form4}



begin

f_data:= form2.Edit3.text;

tit:=form2.edit1.text;

des:=form2.edit2.text;

outfile:=form2.edit4.text;

EI:=form3.edit1.text;

GAMS:=form3.edit2.text;

GAMW:=form3.edit3.text;

COMF1:=form3.edit4.text;

COMF2:=form3.edit5.text;

COMF3:=form3.edit6.text;

COMF4:=form3.edit7.text;

NI:=form4.Edit1.text;

NJ:=form4.Edit2.text;

HEIGHT:=form4.Edit3.text;

D1:=form4.Edit4.text;

DV:=form4.Edit5.text;

DH:=form4.Edit6.text;

DELT:=form4.Edit7.text;

TLENGTH:=form4.Edit8.text;

P:=form4.Edit9.text;

DN:=form4.Edit10.text;



f:=tinifile.create(f_data);

{form2}

f.writestring('presentation','title',tit);

f.writestring('presentation','description',des);

f.writestring('presentation','inputfile',f_data);

f.writestring('presentation','outfile',outfile);

{form3}

f.writestring('material propeties','EI',EI);

f.writestring('material propeties','GAMS',GAMS);

f.writestring('material propeties','GAMW',GAMW);

f.writestring('material propeties','COMF1',COMF1);

f.writestring('material propeties','COMF2',COMF2);

f.writestring('material propeties','COMF3',COMF3);

f.writestring('material propeties','COMF4',COMF4);

{form4}

f.writestring('Geometry','NI',NI);

f.writestring('Geometry','NJ',NJ);

f.writestring('Geometry','HEIGHT',HEIGHT);

f.writestring('Geometry','D1',D1);

f.writestring('Geometry','DV',DV);

f.writestring('Geometry','DH',DH);

f.writestring('Geometry','DELT',DELT);

f.writestring('Geometry','TLENGTH',TLENGTH);

f.writestring('Geometry','P',P);

f.writestring('Geometry','DN',DN);

f.free;



============ 키값가져오기============================





if opendialog1.Execute then

begin

f_data:=opendialog1.filename;

f:=tinifile.create(f_data);

{form2}

tit:=f.readstring('presentation','title','');

des:=f.readstring('presentation','description','');

f_data:=f.readstring('presentation','inputfile','');

outfile:=f.readstring('presentation','outfile','');

{form3}

EI:=f.readstring('material propeties','EI','');

GAMS:=f.readstring('material propeties','GAMS','');

GAMW:=f.readstring('material propeties','GAMW','');

COMF1:=f.readstring('material propeties','COMF1','');

COMF2:=f.readstring('material propeties','COMF2','');

COMF3:=f.readstring('material propeties','COMF3','');

COMF4:=f.readstring('material propeties','COMF4','');

{form4}

NI:=f.readstring('Geometry','NI','');

NJ:=f.readstring('Geometry','NJ','');

HEIGHT:=f.readstring('Geometry','HEIGHT','');

D1:=f.readstring('Geometry','D1','');

DV:=f.readstring('Geometry','DV','');

DH:=f.readstring('Geometry','DH','');

DELT:=f.readstring('Geometry','DELT','');

TLENGTH:=f.readstring('Geometry','TLENGTH','');

P:=f.readstring('Geometry','P','');

DN:=f.readstring('Geometry','DN','');

f.free;

end;



이렇게 코딩했는데 readstring 의 각 파리미터중 키값파리미터을 어떻게 써야 하는지

위와같이 ''로 하니까 null 값을 가져오드라구요

ini파일에 있는 키값을 가져오도록 하고 싶거든요

부탁좀 드립니다







1  COMMENTS
  • Profile
    서철기 2001.04.02 18:50
    예를 들면..



    readstring('Geometry','NI','');



    [Geometry]섹션에 NI키로 정의 되어 있는 값이 있으면..

    해당 값을 불러 오고.. 없으면 ''로 불러 오죠!..



    세번째 파라미터는 디폴트 값을 선언해 줍니다..



    해당 키가 있는데.. 값이 없을 경우에 디폴트..



    참고가 되시길..