INIファイルとは? わかりやすく解説

INIファイル

読み方イニファイル
【英】INI file

INIファイルとは、主にWindows 3.1中心とするWindows系OS用いられるソフトウェア設定に関する情報保存するためのファイルのことである。「INI」は「初期化」や「デフォルト設定」を意味する英語「initialization」のことである。

INIファイルには、複数セクション設けられており、各セクションエントリーとして、キーの名前、およびキーの値が記入される形式となっている。INIファイルは、単純なテキスト形式ファイルであるため、テキストファイルとして扱えば容易に編集することができる。

Windows 3.1続いて登場したWindows 95では、INIファイルに代替する設定ファイルとしてレジストリ用意された。INIファイルを利用した場合ユーザーアプリケーションごとにINIファイルを設け必要があるが、レジストリでは複数ユーザーサービスアプリケーション情報統括して管理することができる。また、レジストリ編集にはレジストリエディタ呼ばれる普段隠されている)特殊なプログラム呼び出す必要があり、不用意に設定値をして変更してエラー引き起こす危険性抑えられている。

最近では、INIファイルやレジストリのような設定ファイル形式として、XMLファイル形式採用したソフトウェア登場している。

ファイルとフォルダのほかの用語一覧
ファイルの種類:  ページファイル  ファイル  INFファイル  INIファイル  隠しファイル  画像ファイル  外字ファイル

INIファイル

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/10/09 05:01 UTC 版)

INIファイルは、ソフトウェアの設定などを記録するために用いられるファイル形式の一つ。構造の単純なテキストファイルであり、設定ファイルのフォーマットとしてよく使われている[1]。INIファイルは主にWindowsで使用するが、他のプラットフォームでも使われる[2]。 INIファイルという名前はこのファイルの一般的な拡張子「.INI」から来ている。INIとはinitialization(イニシャライゼーション)の略であり、その他にconfiguration(コンフィギュレーション)の略である「.CFG」や「.conf」、あるいは「.TXT」なども使われる。

フォーマット

基本的なフォーマットを以下に示す。

パラメータ
INIファイルに含まれる重要な要素が「パラメータ」(もしくはエントリとも呼ばれる)である。個々のパラメータは「名前」(もしくはキーとも呼ばれる)と「値」を持ち、等号(=)で区切られる。等号の左辺が名前、右辺が値である。
name=value
セクション
パラメータは任意の名前を持つ「セクション」でグループ分けすることができる。セクション名は角カッコ ([XXX]) で囲み1行を占める。セクションの宣言の後に現れるパラメータはそのセクションに属する。明示的にセクションの終わりを示す区切り文字はなく、次のセクションの宣言かファイルの終端でセクションは終わる。よってセクションはネストすることができない。
[section]
コメント
コメントの開始はセミコロン(;)によって示される。コメントはその行の終わりまで続く。セミコロンと行末の間の全ては無視される。
; comment text

その他の機能

INIファイルのフォーマットは規格化・標準化はされておらず、明確には決まっていない。多くのプログラムは上で示す基本機能以上の機能をサポートする。以下は一般的な機能の一覧である。実装しているかどうかはプログラム次第である。

空行
簡単なプログラムの中には空行を許さないものがある。この場合、すべての行はセクションの宣言かパラメータかコメントでなければならない。
クォーテーション
いくつかの実装では値を引用符で囲むことができる。典型的にはダブルクォーテーション("XXX")やシングルクォーテーション('XXX')あるいはその両方を使う。これにより明示的に空白文字を使ったり、特殊文字を使ったりすることができる。
コメント
マイクロソフトによる実装ではセミコロンのみがコメント開始文字として使用できる[3]が、セミコロンに加えナンバーサイン(#)もコメントの指示に使えるものがある[4]
コメントを開始する位置が行頭しか許されないものと、行の途中からでもコメントを入れられるものがある。
大文字・小文字の区別
パラメータ名やセクション名の大文字・小文字を区別するかどうかは実装によって異なる。マイクロソフトによる実装では区別されていない[5]
名前の重複
多くの実装ではセクションの中では同名のパラメータは1つしか許されない。2つ目が現われたときには、異常終了する、2つ目が無視される、1つ目が上書きされるといったことが起こる。一部のプログラムではパラメータを重複させることで複数の値を持つパラメータを作ることができる。
セクション名の重複の扱いも実装によりさまざまである。ある実装ではセクションが重複すると単純に両方のパラメータを合成する。また異常終了したり一部を無視したりする場合もある。
名前/値の区切り文字
等号の代わりにコロン(:)を使うものもある。
階層構造
一般的に、INIファイルにはセクションの階層構造はない。しかし、階層的な命名規則を持つように見えることがある。例えばA、B、Cの階層を考えたとき、セクション名に[A.B.C]Windowsのxstart.ini[要説明])や[A\B\C]IBM Windows ドライバファイルdevlist.ini)と付けたり、セクション[A]の下にパラメータB,C,P=Vを作ったり(Microsoft Visual StudioのAEMANAGR.INI)することは可能である。
この場合、これらが見た目を分かりやすくするための単なる慣習なのか、それともプログラムが階層を理解しているのかは区別が難しい。
エスケープ
エスケープ文字の扱いはさまざまである。典型的にはバックスラッシュ(\)が使用される(環境によっては円記号として表示される)。行末に置いた場合に改行を無視して次の行までを1つの論理行として扱うことがある。エスケープシーケンスによる特殊文字の扱いも見られる。
一般的なエスケープシーケンス
表記 解釈
\\ \(1つのバックスラッシュ、エスケープ文字をエスケープ)
\0 Null文字
\a ベル
\b バックスペース、まれにベル
\t タブ
\r 復帰(キャリッジリターン
\n 改行(ラインフィード
\; ;
\# #
\= =
\: :
\x???? 16進表記のUnicode文字

マイクロソフトによる実装

Windowsでは、Windows 3.1以前はWIN.INIというINIファイルが唯一存在していたが、Windows 3.1でアプリケーション用のINIファイルが使用され、WIN.INIと区別してプライベートプロファイルファイルと呼ばれた[6]。 INIファイルを扱うためのインターフェイスがC言語形式関数としてWindows APIに標準実装されている。しかし、これらはWin16との互換性のために残されているだけで、Win32以降ではレジストリXMLファイルなどでの設定管理が推奨されており、INIファイルは推奨されていない[7]

INIファイル読み書きのための代表的な関数を以下に示す。ANSIマルチバイト文字セット (MBCS) 用のA関数と、Unicode文字セット用のW関数が用意されているが、保存されるINIファイルのテキストエンコーディングは、デフォルトではいずれを使用してもANSI MBCSとなり、Windowsのシステムロケール設定に左右される。

Windows用ソフトウェアのインストール設定ファイル (.inf) などもINIフォーマットの派生形式である[8]

脚注

参考文献

  • Richard J. Simon、Michael Gouker、Brian C. Barnes 著、スリーエーシステムズ 訳「第20章 初期化ファイル」『Programmer's SELECTION Windows 95 APIバイブル1 Win32編』翔泳社、1998年9月15日、896頁。ISBN 4-88135-430-2 

関連項目




固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「INIファイル」の関連用語

INIファイルのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



INIファイルのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2024 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリの【INIファイル】の記事を利用しております。
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのINIファイル (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS