初期化ファイル [IniFile]

目次


1. ◆ 概要

下に示すような ini ファイル(アプリケーションのデータを格納する テキスト・ファイル)を読み書きします。

[main]
app_name = Knowledge Take!
version = 100
date = 1998/02/22

1-1. 特徴・要求

1-2. 制限・代用


2. ◆ ファイルの例

[main]
app_name = Knowledge Take!
version = 100   // 値は100倍です
date = 1998/02/22
date = 1998/02/21
baseURL = "http://www.ne.jp/~m-toda/", 1

[links]
name = a
baseURL = compone/look
link = src/arrayu.htm, 配列使用管理 [ArrayU]   // URL,タイトルです
link = src/arrayu2.htm, 配列使用管理 [ArrayU2]
link = src/arrayu3.htm, 配列使用管理 [ArrayU3]


3. ◆ プログラミングの例

3-1. 書き込むときのプログラム例

IniFile_Write_init( &file, "sample.ini" );
IniFile_Write_putSection( &file, "main" );
IniFile_Write_putVar( &file, "app_name", "s", "Knowledge Take!" );
IniFile_Write_putVar( &file, "version", "i", 100 );
for ( i = 0; i < n; i++ )
  IniFile_Write_putVar( &file, "date", "t", date[i] );
IniFile_Write_putVar( &file, "baseURL", "si", url, type );

IniFile_Write_putSection( &file, "links" );
IniFile_Write_putVar( &file, "name", "s", "a" );
IniFile_Write_putVar( &file, "baseURL", "i", baseUrl );
for ( i = 0; i < n; i++ )
  IniFile_Write_putVar( &file, "link", "ss", url[i], title[i] );
IniFile_Write_finish( &file );

3-2. 読み込むときのプログラム例

IniFile_Read_init( &file, "sample.ini" );
IniFile_Read_setSection( &file, "main" );
IniFile_Read_getVar( &file, "app_name", "s", app );
IniFile_Read_getVar( &file, "version", "i", &ver );
n = IniFile_Read_getCount( &file, "date" );
for ( i = 0; i < n; i++ )
  IniFile_Read_getVar( &file, "date", "t", &date[i] );
IniFile_Read_getVar( &file, "baseURL", "si", url, &type );

IniFile_Read_getSection( &file, sect );  // セクション名の取得も可能
IniFile_Read_getVar( &file, "name", "s", "a" );
IniFile_Read_getVar( &file, "baseURL", "i", baseUrl );
n = IniFile_Read_getCount( &file, "link" );
for ( i = 0; i < n; i++ )
  IniFile_Read_getVar( &file, "link", "ss", url[i], title[i] );
IniFile_Read_finish( &file );


written by Masanori Toda