-
/**
-
@file PropertiesUtil.h
-
@brief CPropertiesUtil 클래스 선언 헤더
-
*/
-
#if !defined(AFX_PROPERTIESUTIL_H__5B7DF824_3F5A_47F6_9AD3_A287733C8379__INCLUDED_)
-
#define AFX_PROPERTIESUTIL_H__5B7DF824_3F5A_47F6_9AD3_A287733C8379__INCLUDED_
-
#if _MSC_VER > 1000
-
#pragma once
-
#endif // _MSC_VER > 1000
-
#include <afxtempl.h>"stdafx.h"
-
#define PROPERTY_LOAD_SUCCESS 1 /**< 파일 파싱까지 성공함 */
-
#define PROPERTY_LOAD_FILE_FAILED 0 /**< 파일 로드에 실패함 */
-
#define PROPERTY_ERROR_LINE_MUL -1 /**< 여기에 * n(에러 행 번호) 해서 리턴하게 됨 */
-
/**
-
@brief 설정 파일을 읽어서 보관하는 클래스
-
설정 파일의 구조는 다음과 같다.
-
- 첫 글자가 # 이면 그 라인은 주석
-
- 빈 라인은 대상이 되지 않음
-
- '속성 = 값' 으로 이루어진다.
-
*/
-
class AFX_EXT_CLASS CPropertiesUtil
-
{
-
public:
-
/**
-
* @brief 생성자\n
-
* 아무 일도 하지 않는다.
-
*
-
*/
-
CPropertiesUtil();
-
/**
-
* @brief 소멸자\n
-
* 아무 일도 하지 않는다.
-
*
-
*/
-
virtual ~CPropertiesUtil();
-
/**
-
@brief 설정 파일을 읽어들여서 파싱하고 각 설정들을 저장
-
@param szFileName 읽어들일 설정 파일 이름
-
@return 에러 유무
-
@see PROPERTY_ERROR_LINE_MUL
-
@see PROPERTY_LOAD_FILE_FAILED
-
@see PROPERTY_LOAD_SUCCESS
-
*/
-
int LoadFile(const char * szFileName);
-
/**
-
@brief 속성에 해당하는 값을 맵에서 찾아서 전달인자에 설정
-
@param szKey 속성 이름
-
@param csValue 속성에 해당하는 값
-
@return 속성의 존재 유무
-
*/
-
BOOL GetMatchedValue(const char * szKey, CString & csValue);
-
private:
-
CMapStringToString m_mapKeyToVal; /**< 키와 값을 매핑시킨 객체 */
-
};
-
#endif // !defined(AFX_PROPERTIESUTIL_H__5B7DF824_3F5A_47F6_9AD3_A287733C8379__INCLUDED_)
출처 : http://gfc3.springnote.com/pages/333455

