TNB Library
|
iniファイルアクセスクラス [詳解]
#include <TnbInifileAccessor.h>
公開型 | |
typedef CMapT< CStr, CValue, LPCTSTR > | CKeyMap |
キーと値のマップ型宣言 [詳解] | |
typedef CTreeT< CStr, CValue, LPCTSTR > | CKeyTree |
キーと値のツリー型宣言 [詳解] | |
enum | EKind { EK_Nothing = 'n' , EK_String = 's' , EK_PluralStrings = 'p' , EK_Binary = 'b' , EK_Dword = 'd' , EK_Longlong = 'i' } |
値型の種類. [詳解] | |
公開メンバ関数 | |
CInifileAccessor (LPCTSTR lpszFile=NULL) | |
コンストラクタ [詳解] | |
bool | DeleteAllSection (void) |
[削除] 全セクション削除 [詳解] | |
virtual bool | DeleteSection (LPCTSTR lpszSectionName) |
[削除] 指定セクション削除 [詳解] | |
virtual CStrVector | EnumKeyNames (LPCTSTR lpszSectionName) const |
[取得] 名前一覧取得 [詳解] | |
virtual CStrVector | EnumSectionNames (LPCTSTR lpszSectionName=NULL) const |
[取得] セクション名一覧取得 [詳解] | |
bool | ExistBaseFile (void) const |
[確認] 対象ファイル存在確認. [詳解] | |
virtual bool | Flush (void) |
[操作] フラッシュ. [詳解] | |
CStr | GetBaseFileName (void) const |
[取得] 対象ファイル取得 [詳解] | |
virtual EKind | GetKeyKind (LPCTSTR lpszSectionName, LPCTSTR lpszKey) const |
[取得] 情報取種取得 [詳解] | |
void | GetKeyTree (CKeyTree &_tree) const |
[取得] 全値取得 [詳解] | |
void | GetKeyTree (CStrsTree &_tree) const |
[取得] 全値取得 [詳解] | |
virtual CStr | GetTypeName (void) const |
[取得] タイプ名取得 [詳解] | |
bool | NewBaseFile (bool isUnicode=false) |
[作成] 対象ファイル作成. [詳解] | |
CSection | operator[] (LPCTSTR lpszSectionName) |
[取得] CSection取得 [詳解] | |
const CSection | operator[] (LPCTSTR lpszSectionName) const |
[取得] CSection取得 [詳解] | |
virtual CValue | QueryValue (LPCTSTR lpszSectionName, LPCTSTR lpszKey) const |
[取得] 情報取得 [詳解] | |
void | SetBase (LPCTSTR lpszFile=NULL) |
[設定] 対象ファイル指定 [詳解] | |
virtual bool | WriteValue (LPCTSTR lpszSectionName, LPCTSTR lpszKey, const IAccessor::CValue &value) |
[設定] 情報設定 [詳解] | |
静的公開メンバ関数 | |
static CStr | MakeDefineFilePath (void) |
[作成] 定義ファイル名作成. [詳解] | |
static CStr | MakeInifilePath (void) |
[作成] iniファイルパス作成. [詳解] | |
template<typename TYP > | |
static CVectorT< IAccessor::CValue > | ToValueVector (const CVectorT< TYP > &vt) |
[変換] 配列変換. [詳解] | |
iniファイルアクセスクラス
iniファイルにアクセスする関数群です。 APIの GetPrivateProfile〜 関数 SetPrivateProfile〜 とファイル互換が有ります。 ただし、すべてにおいて、文字列として処理しています。 コンストラクタや SetBase() で情報のベースを指定し、 operator[]() で セクション情報アクセスクラス({@link IAccessor::CSection CSection})を取得し、 Query〜() 、 Write〜() などでキー情報にアクセスします。
CSection
を使用してください。TnbInifileAccessor.h の 57 行目に定義があります。
キーと値のツリー型宣言
TnbAccessor.h の 269 行目に定義があります。
|
inherited |
値型の種類.
IAccessor と IAccessor::CValue で使う型の種類です。
列挙値 | |
---|---|
EK_Nothing | 存在しない |
EK_String | 文字列 |
EK_PluralStrings | 複数の文字列群 |
EK_Binary | バイナリ |
EK_Dword | 32Bit Unsigned Integer |
EK_Longlong | 64Bit Signed Integer |
TnbAccessor.h の 79 行目に定義があります。
|
explicit |
|
inherited |
|
virtual |
[削除] 指定セクション削除
lpszSectionName | セクション名。 |
true | 成功 |
false | 失敗 |
IAccessorを実装しています。
TnbInifileAccessor.h の 241 行目に定義があります。
|
virtual |
[取得] 名前一覧取得
lpszSectionName | セクション名 |
IAccessorを実装しています。
CExInifileAccessorで再実装されています。
TnbInifileAccessor.h の 275 行目に定義があります。
|
virtual |
[取得] セクション名一覧取得
lpszSectionName | セクション名。 NULLを指定すると、ROOTのセクション一覧が得られます。 |
IAccessorを実装しています。
TnbInifileAccessor.h の 179 行目に定義があります。
bool ExistBaseFile | ( | void | ) | const |
[確認] 対象ファイル存在確認.
対象の ini ファイルが、現在存在しているか、確認できます。
true | あり。 |
false | 無し。 |
TnbInifileAccessor.h の 108 行目に定義があります。
|
virtual |
[操作] フラッシュ.
CAbstractAccessorを再実装しています。
TnbInifileAccessor.h の 168 行目に定義があります。
CStr GetBaseFileName | ( | void | ) | const |
|
virtual |
[取得] 情報取種取得
lpszSectionName | セクション名 |
lpszKey | キー名 |
IAccessorを実装しています。
CExInifileAccessorで再実装されています。
TnbInifileAccessor.h の 303 行目に定義があります。
|
inherited |
|
inherited |
[取得] 全値取得
[out] | _tree | ツリー |
TnbAccessor.h の 1040 行目に定義があります。
|
virtual |
|
staticinherited |
|
static |
[作成] iniファイルパス作成.
実行ファイル名の .exeを .iniに変えたものを作成します。
TnbInifileAccessor.h の 85 行目に定義があります。
bool NewBaseFile | ( | bool | isUnicode = false | ) |
[作成] 対象ファイル作成.
対象ファイルを新規します。今までの情報はすべてなくなります。
isUnicode | false なら ASCII(S-JIS)、 true なら UNICODE で対象ファイルを新規作成します。 |
true | 成功. |
false | 失敗 |
TnbInifileAccessor.h の 129 行目に定義があります。
|
inherited |
[取得] CSection取得
lpszSectionName | セクション名 |
TnbAccessor.h の 976 行目に定義があります。
|
inherited |
[取得] CSection取得
lpszSectionName | セクション名 |
TnbAccessor.h の 986 行目に定義があります。
|
virtual |
[取得] 情報取得
lpszSectionName | セクション名 |
lpszKey | キー名 |
IAccessorを実装しています。
CExInifileAccessorで再実装されています。
TnbInifileAccessor.h の 319 行目に定義があります。
void SetBase | ( | LPCTSTR | lpszFile = NULL | ) |
|
staticinherited |
[変換] 配列変換.
IAccessor::CValue の配列に変換します。
vt | 配列 |
TnbAccessor.h の 940 行目に定義があります。
|
virtual |
[設定] 情報設定
lpszSectionName | セクション名 |
lpszKey | キー名 |
value | 設定する値。EK_Nothing の場合、キーを削除します。 |
true | 成功 |
false | 失敗 |
CTnbException | 設定失敗時、スローされる可能性があります。 |
IAccessorを実装しています。
CExInifileAccessorで再実装されています。
TnbInifileAccessor.h の 338 行目に定義があります。