IT 취미생활.  
Front Page
Tag | Location | Media | Guestbook | Admin   
 
'INI'에 해당하는 글(1)
2009.09.10   ini 설정 파일에 특정 value 얻어오기


ini 설정 파일에 특정 value 얻어오기

linux에서도 이런 API가 있는지 모르겠어서
하나 간단하게 함수로 만들어 보았습니다.

머리가 나쁜면 손발이 고생한다고 하는데 -0-;
필요하신 분들이 있으면 잘 활용하셔요!

예외 처리등이 부실하니, 좀더 낳은 버전으로 수정 하시면
피드백 부탁 드리겠습니다.

그럼 고운하루 되세요.

/*
 * ex) test.ini
 *     [Data]
 *     value= 30
 *     .....
 *
 * ex) GetProfileToString("[Data]", "value=", buffer, "/tmp/test.ini");
 * 텍스트로 작성된 ini 등 에서 특정 섹션의 값을 읽어 온다.
 */
void GetProfileToString(char *section, char *keyName, char *string, char *fileFullPath)
{
    char tempBuffer[MAX_PATH] = { 0 };
    char *result = NULL;
    FILE *fp = fopen(fileFullPath, "rt");
    if (fp == NULL) {
        goto FINALLY;
    }
    while (fgets((char *)tempBuffer, MAX_PATH, fp)) {
        if (0 == strncmp(section, tempBuffer, strlen(section))) {
            memset(tempBuffer, 0, MAX_PATH);
            while (fgets((char *)tempBuffer, MAX_PATH, fp)) {
                if(tempBuffer[0] == '[') {
                    goto FINALLY;
                }
               
                if(0 == strncmp(keyName, tempBuffer, strlen(keyName))) {
                    char *p = (char*)tempBuffer;
                    p += strlen(keyName);
                    memcpy(string, p, strlen(keyName));
                    fclose(fp);
                    return;
                }
            }
        }
        memset(tempBuffer, 0, MAX_PATH);
    }
FINALLY:
    if (fp) {
        fclose(fp);
    }
    string = result;
}


BLOG main image
취미생활
 Notice
 Category
분류 전체보기 (191)
매일매일갱생 (83)
서버개발 (1)
임베디드개발 (12)
Programming (80)
Personal Projects (6)
유용한 프로그램 (0)
 TAGS
1seg 티스토리초대 ISDB-T DVB-T It 티스토리 초대장 Algorithm 음식 벨소리 변경 Wince5.0 개발자 DirectShow VC++ Error Case Dshow debugging MP3 서태지 군대 영어 이메일 M480 Java 미라지폰 English Linux project Brazil 알고리즘 warning 출장 Windows Mobile6.0 spam mail isdbt 퇴사 DVB C++ english email C Debug
 Calendar
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
 Recent Entries
 Recent Comments
 Recent Trackbacks
 Archive
 Link Site
zextor
괴짜 프로그래머의 일상사~@@
Gag & Peace, and more..
Kazakhstan Almaty.......
Min-A
Sadgarret
Steve Yoon's log
가슴 뛰는 삶을 살아라
오스틴 파워
GUI sin
melanie parker_Lady
제레미의 TV 2.0 이야기..
 Visitor Statistics
Total :
Today :
Yesterday :
rss