C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[48330] Re:Re:Re:Re:정해진 위치에 있는 ini파일을 읽어오려면요;;ㅠㅠ
suni1300 [suni1300] 1319 읽음    2007-03-09 14:21
//실행파일과 같은 이름의 TIniFile  object를 만든다.
:     TIniFile* pif = new TIniFile(ChangeFileExt(Application->Filename, ".ini"));
이 부분은 Windows폴더에 있는 실행파일과 같은 이름의 ini파일을만든다는 뜻이지요?

음..
현재 실행파일이 있는 폴더에 들어있는 ini파일을 오픈하려면
어떤 함수를 써야 하나요?
이런 기능을 수행하는 함수를 찾으려 할 때 헬프에서는 어떻게 찾을 수 있나요?
헬스사용에 능숙하지 못해서..
찾기가 힘드네요;;
죄송합니다.
그리고 감사합니다.^0^



장성호 님이 쓰신 글 :
: #include "IniFiles.hpp"
: void __fastcall TForm1::FormCreate(TObject *Sender)
: {
:
:     //실행파일과 같은 이름의 TIniFile  object를 만든다.
:     TIniFile* pif = new TIniFile(ChangeFileExt(Application->Filename, ".ini"));
:
:     //특정섹션아래의 Key값 모두 읽오온다.
:     TStringList *sKeyLst = new TStringList;   //Key값만 읽어오기 위한 변수 생성
:     pif->ReadSection("LANGUAGES",sKeyLst );   //[LANGUAGES] 섹션아래의 Key만 모두 읽어옴
:
:     for ( int i=0;i<sKeyLst->Count;i++)
:     {
:         //[LANGUAGES] 섹션의 각 Key의 Value를 String으로 읽어와서 ComboBox에 추가함
:         ComboBox1->Items->Add(pif->ReadString("LANGUAGES",sKeyLst->Strings[i],""));
:     }
:
:     //사용한 object를 free
:     delete sKeyLst;
:     delete pif;
: }
:
: 그럼....
:
:
: suni1300 님이 쓰신 글 :
: : Application Filename;
: : Filename = “a.ini”;
: : TIniFile* pif new TIniFile(TChangeFileExt(Application->Filename, “ini”));
: : 제가 하려는 것이 실행파일이 있는 위치에서ini파일을 읽어오려고 하는데
: : 이렇게 하면 안되나요?
: : 나름대로 알아본 결과대로 짠 것인데 안되네요..
: :
: :
: :
: : 장성호 님이 쓰신 글 :
: : : 먼저 ini파일이 어떤 format으로 기록되는지 아셔야 합니다.
: : :
: : : Section 과 Key 그리고 Value
: : :
: : : 1) ReadSections 함수는  ini 파일에 있는 대괄호 "[    ]" 로 묶여있는
: : : 섹션 정보만을 모두 읽어오는 함수입니다.
: : : 원하시는 작업이 섹션만 모두 읽오오시고자 한다면
: : :   pif->ReadSections(ComboBoxEx1->Items);  이렇게만 하면 되겠죠
: : :
: : : 2) 만약 섹션 밑에 있는 Key정보를 모두 읽어오고자 한다면?
: : :     Key는 섹션 아래에   '=' 문자 앞쪽에 있는 string입니다.
: : :
: : :    [KOREA]  라는 섹션이 있다고 가정하고 "KOREA"섹션 아래의 Key를 모두 읽어오려면
: : :
: : :     pif->ReadSection("KOREA",ComboBox1->Items); //이렇게 하면 되겠죠
: : :
: : :   
: : :
: : : 3) 그러나 원하는 값이  Key가 아니라 특정 Key의 value인 경우에는 섹션과 key를 정해주고 읽어와야 합니다.
: : :     String str = pif->ReadString("KOREA","msg1","");
: : :    ComboBox1->Items->Add(str);
: : :
: : :
: : :    //이렇게 해도 됩니다. 그러면 Key정보와 함께 같이 combobox에 들어가겠죠
: : :    pif->ReadSectionValues("KOREA",ComboBox1->Items);
: : :
: : :
: : : --------
: : : TIniFile 클래스는 아주 ini파일을 편리하게 접근하도록 만들어진 라이브러리 입니다.
: : : 클래스 내부 함수이름만 잘 읽어도 ,  도움말 만 잘보아도
: : : 어떻게 사용해야할지  잘 알수 있을것입니다.
: : :
: : : 그럼
: : :
: : :
: : : 참 님께서는 delete를 빠뜨렸네요
: : :
: : : delete pif ;
: : :
: : :
: : :
: : :
: : : suni1300 님이 쓰신 글 :
: : : : TIniFile* pif = new TIniFile("language.ini"); // 파일을 열기
: : : :   
: : : : pif->ReadSections(ComboBoxEx1->Items); // 파일에 있는 데이터 읽기
: : : :
: : : : ComboBoxEx1->ItemsEx->Add(); // 읽은 데이터를 콤보박스 리스트에 넣기.
: : : :
: : : : 이렇게 하면 파일에서 읽은 데이터를 콤보박스의 리스트에 넣을 수 있지 않나요?
: : : :
: : : : 오늘 처음 해보는것이라 모르겠습니다.
: : : :
: : : : 도와주세요.ㅜㅜ

+ -

관련 글 리스트
48318 ini를 이용한 combo box에 대한 질문입니다.ㅠㅠ suni1300 1241 2007/03/08
48320     Re:ini를 이용한 combo box에 대한 질문입니다.ㅠㅠ 장성호 1432 2007/03/08
48327         Re:Re:정해진 위치에 있는 ini파일을 읽어오려면요;;ㅠㅠ suni1300 1586 2007/03/09
48328             Re:Re:Re:정해진 위치에 있는 ini파일을 읽어오려면요;;ㅠㅠ 장성호 1374 2007/03/09
48330                 Re:Re:Re:Re:정해진 위치에 있는 ini파일을 읽어오려면요;;ㅠㅠ suni1300 1319 2007/03/09
48331                     Re:Re:Re:Re:Re:정해진 위치에 있는 ini파일을 읽어오려면요;;ㅠㅠ 장성호 1586 2007/03/09
48332                         Re:Re:Re:Re:Re:Re:감사합니다.!!덕분에 개념이 많이 잡혔습니다.~^^(냉무) suni1300 1320 2007/03/09
48321         Re:Re:ini를 이용한 combo box에 대한 질문입니다.ㅠㅠ suni1300 1036 2007/03/08
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.