ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [ini이란?] ini 파일은 어떻게 사용하는가?
    C_C++ 프로그래밍 2019. 6. 26. 22:35

     

         로재의 개발 일기      

    ini 파일이란?

    ini 파일은 보통 프로그램 정보를 저장하는 텍스트 문서를 말합니다.

    대체적으로 아래처럼 작성합니다.

    [SERVER1]

    SERVER_IP : 127.0.0.1

    SERVER_NAME : admin

    TCP_PORT = 3000

    UDP_PORT = 3100

    [SERVER2]

    SERVER_IP : 127.0.0.1

    SERVER_NAME : admin

    TCP_PORT = 3000

    UDP_PORT = 3100

    (편의상 두개의 section 내용은 같습니다.)


    그리고 그것을 위해서 사용하는 함수가 몇 가지 있는데요.

    (무조건 ini 파일로 사용하는 것은 아닙니다.)


       GetPrivateProfileInt
       GetPrivateProfileString
       WritePrivateProfileString

    가 있습니다.



      GetPrivateProfileInt

    1
    2
    3
    4
    5
    6
    UINT GetPrivateProfileInt(
      LPCTSTR lpAppName,
      LPCTSTR lpKeyName,
      INT     nDefault,
      LPCTSTR lpFileName
    );
    cs

    lpAppName : section의 이름을 지정합니다.

    lpKeyName : 해당 section에서 가져 올 key 값을 말합니다.

    nDefault : 해당 key가 존재하지 않으면 쓰여질 값을 말합니다. (default 값)

    lpFileName :  File의 경로를 지정합니다.


      GetPrivateProfileString

    1
    2
    3
    4
    5
    6
    7
    8
    DWORD GetPrivateProfileString(
      LPCTSTR lpAppName,
      LPCTSTR lpKeyName,
      LPCTSTR lpDefault,
      LPTSTR  lpReturnedString,
      DWORD   nSize,
      LPCTSTR lpFileName
    );
    cs

    lpAppName : section의 이름을 지정합니다.

    lpKeyName : 해당 section에 존재하는 key를 지정합니다.

    lpDefault : key가 존재하지 않으면 지정해줄 Default 값 입니다. ( NULL을 반납하기 위해서 "" 사용 가능)

    lpReturnedString : key를 통해서 얻은 value의 값을 얻기 위한 버퍼

    nSize : return 되는 value를 저장하기 위한 버퍼의 크기

    lpFileName : ini파일의 경로를 지정합니다.



      WritePrivateProfileString

    1
    2
    3
    4
    5
    6
    BOOL WritePrivateProfileString(
      LPCSTR lpAppName,
      LPCSTR lpKeyName,
      LPCSTR lpString,
      LPCSTR lpFileName
    );
    cs

    lpAppName : section을 지정합니다.

    lpKeyName : 해당 section의 key를 지정합니다.

    lpString : 해당 key의 value로 지정해줄 값을 정합니다.

    lpFileName :  ini 파일의 경로를 지정해줍니다.



    ※ 본 글은 개인 포트폴리오 혹은 공부용으로 사용하기 때문에, 무단 복사 유포는 금지하지만, 개인 공부 용도로는 얼마든지 사용하셔도 좋습니다




    반응형
Designed by Tistory.