50 mutable CStr m_strSecName;
63 void m_Reset(
void)
const
73 CKeyMap* m_CheckKeyMapP(
void)
const
75 if ( m_pmapKey == NULL &&
m_mapSec.HasKey(m_strSecName) )
77 m_pmapKey = &(
m_mapSec[m_strSecName]);
87 CKeyMap* m_GetKeyMapP(
void)
89 if ( m_pmapKey == NULL )
91 m_pmapKey = &(
m_mapSec[m_strSecName]);
99 void m_SetSectionName(LPCTSTR lpszSectionName)
const
101 if ( m_strSecName != lpszSectionName )
104 m_strSecName = lpszSectionName;
115 bool m_Write(LPCTSTR lpszKey,
const CValue& v)
117 CKeyMap* P = m_GetKeyMapP();
132 bool m_Delete(LPCTSTR lpszKey)
134 CKeyMap* P = m_CheckKeyMapP();
135 return (P != NULL) ? P->RemoveKey(lpszKey) :
false;
172 CStr ss = lpszSectionName;
182 if ( ! s.
IsEmpty() && s[0] ==
'\\' )
197 if ( ! vs[i].IsEmpty() )
200 INDEX d = s.
Find(_T(
'\\'));
201 if ( d != INVALID_INDEX )
205 if ( vstrSecNames.
Find(s) == INVALID_INDEX )
224 CStr ss = lpszSectionName;
246 m_SetSectionName(lpszSectionName);
259 m_SetSectionName(lpszSectionName);
277 m_SetSectionName(lpszSectionName);
297 m_SetSectionName(lpszSectionName);
300 return m_Delete(lpszKey);
302 return m_Write(lpszKey, value);
#define loop(VAR, CNT)
loop構文.
CVectorT< KEY > EnumKeys(void) const
[取得] キーの一覧
bool Lookup(INK key, VAL &_rValue) const
[取得] キーに対する値取得
bool IsEmpty(void) const
[確認] 空チェック
CStrT Left(size_t iSize) const
[作成] 範囲取得.
size_t GetLength(void) const
[取得] 文字列長
INT_PTR Find(TYP t, INDEX iFromIndex=0) const
[確認] 検索.
CStrT Mid(INDEX iOffset, size_t iSize=INVALID_SIZE) const
[作成] 範囲取得.
virtual CStr GetTypeName(void) const
[取得] タイプ名取得
virtual bool Flush(void)
[操作] フラッシュ.
virtual CStrVector EnumKeyNames(LPCTSTR lpszSectionName) const
[取得] キー名一覧取得
virtual bool WriteValue(LPCTSTR lpszSectionName, LPCTSTR lpszKey, const IAccessor::CValue &value)
[設定] 情報設定
CTemporaryAccessor(void)
コンストラクタ
virtual bool DeleteSection(LPCTSTR lpszSectionName)
[削除] 指定セクション削除
virtual CValue QueryValue(LPCTSTR lpszSectionName, LPCTSTR lpszKey) const
[取得] 情報取得
virtual EKind GetKeyKind(LPCTSTR lpszSectionName, LPCTSTR lpszKey) const
[取得] 情報取種取得
CMapT< CStr, CKeyMap, LPCTSTR > m_mapSec
セクションマップ
virtual CStrVector EnumSectionNames(LPCTSTR lpszSectionName=NULL) const
[取得] セクション名一覧取得
virtual size_t GetSize(void) const
[取得] サイズ取得
CVectorT< TYP > Mid(INDEX startIndex, size_t size=0) const
[作成] 切り出し
virtual INDEX Add(const TYP &t)
[追加] 要素一つ追加.
EKind GetKind(void) const
[取得] 情報取種取得
TNB::CVectorT< CStr > CStrVector
文字列配列管理クラス
int Compare(LPCSTR P1, LPCSTR P2, INT_PTR len=-1, DWORD dwCmpFlags=0)
[比較] 文字列比較(ASCII/SJIS用)
INDEX Find(const IChecker &checker, INDEX startIndex=0, bool boIsReverse=false) const
[検索] 条件一致要素の検索.