INIファイルシステム構成デルファイは読ん 呼び出しユニットは、デルファイが組み込まれて 使用しています 。System.IniFilesを 。1 、クラスのTIniFile使用して 2 :、メインクラスのTIniFileメソッドや関数 { $ IFDEF MSWINDOWS } { 取得します(WindowsのINIインターフェースファイルをカプセル化-のTIniFileを/ SetPrivateProfileXXX関数)} のTIniFile = クラス(TCustomIniFile) パブリックデストラクタ破棄 ; オーバーライドは、 機能 ReadString(CONST:セクション、のIdent、デフォルト文字):文字列 ; オーバーライド; 手順 WriteStringメソッドを( constのセクション、のIdent、値:文字列); 上書きします。 手順としてReadSection(constのセクション:文字列 ;文字列:TStringsは); 上書きします。 手続き ReadSections(文字列:TStringsは); 上書きします。 手続き ReadSectionValues(constのセクション:文字列 ;文字列:TStringsは); 上書きします。 手続き EraseSection(constのセクション:文字列); 上書きします。 手順削除キー(のconstセクション、のIdent:文字列);上書きします。 手順 UpdateFile; 上書きします。 エンド; { $のELSE } のTIniFile = クラス(TMemIniFileという) パブリックコンストラクタを作成し(CONST:ファイル名の文字列 ; CONST :TEncoding;エンコーディング CASESENSITIVE、UseLocale:ブール型)。過負荷 ; 上書きします。 エンド; { $ ENDIF } 二、读写INI 2 、INI文件的格式: [FDConnectionDefs.ini] エンコーディング = UTF8 【TCPServerの】 サーバー名 = 192.168。3.100 ポスト = 211 ChannelID = チャネル1 マネージャーID =あるCLIENT_IDENTIFIER 1 [MSSQL] サーバ = 119.29。5.177 User_Nameの = のsa パスワード = admin81の DATABASE = disp_tiyuxueyuan2015 DriverID = MSSQL プールされた = 真 MonitorBy = リモート アドレス = 119.29。5.177、1433年 3、クラスファイルのTIniFileのインスタンスを初期化する: 配信アプリケーションをコンパイルし、APPは、最初にデフォルトのINIファイルを書き込み、その後に読み取りと書き込み: 3.1 、MSWINDOWS VAR をIniFile:のTIniFile; ファイル名:文字列 ; aServerName:文字列; // ファイル名:あなたは、iniファイル名を読みたい // :クラスファイルのTIniFileのインスタンスの初期化のために:作成 をIniFile:=のTIniFileを。作成します(ファイル名); aServerName: = IniFile.ReadString(' TCPServerの'、' サーバー名'、'' ); // ... IniFile.Free; 3.1。1どのReadString(ドキュメントを読んで)、WriteStringメソッド(ファイルの書き込み)、削除キー(マークはファイルを削除する)共通: :そのパラメータの意味 セクション:例えば、[TCPServerの]上記:[]分割ブロックにINIファイルの代表者 のIdent:符号パラメータは 値:パラメータ(書き込み)の値 既定値:パラメータの値(読み) 3.2 、他のプラットフォーム用 のvar IniFileStream:のTIniFile;エンコード:TEncoding; ファイル名:文字列 ; AStringList:TStringListの; ANAME:文字列; // ファイル名:あなたiniファイル名を読ん // 作成:クラスファイルのインスタンスのTIniFileを初期化するために: エンコーディング:= TEncoding.Unicode; IniFileStream: =のTIniFileは。作成(trueに、falseに、ファイル名、エンコーディング); AStringList:。TStringListのを= 作成。 AStringList.LoadFromFile(ファイル名); // / <概要> 02、文字列を取得myDelimiter区切られた値は、</要約>区切られて // / <まとめ>とTStringListのに割り当て:</要約> ANAME:= '' ; myStr = ANAME; // 一般的な手順myItems_Delimiter //書き込み(myStr:文字列; myDelimiter:チャー; AStringList:TStringListの); myItems_Delimiter(ANAME、' [ ' 、AStringList); // ANAMEのために.trim(各サブストリーム分析の行は、「=」KEYサブストリーム解析その値が前記改行によって)操作: // 読み取りおよび書き込み操作を介して、又はAStringListループが実行されてもよい:// AStringList.Sorted:ブール; // AStringList.Find(のconst S:文字列; VARランキング:整数):ブール// AStringList.IndexOf(定数S:文字列):整数; // AStringList.IndexOfName(定数名:文字列):整数; // AStringList.Add(のconst S:文字列):整数; // AStringList.Insert(インデックス:整数; SのCONST:文字列); // AStringList.Delete(インデックス:整数); // AStringList.Exchange(index1には、インデックス2はである:整数); AStringList.SaveToFile(ファイル名); // IniFileStream TMemIniFileというTCustomIniFileからの継承によって継承 { TMemIniFileという-全体INI負荷INTOファイルとandroid.permissionすべてのメモリ動作はメモリ画像になるように行う。 OUT書き込まれた画像のディスク・ファイルにすることができる} { TMemIniFileという-全体のINIファイルがメモリにロードされ、すべての操作をメモリイメージに許可されています(メモリ・ストリーム)。 画像メモリ(RAMストリーム)は、ディスクファイルの読み取りおよび書き込み操作であってもよい} // コンストラクタは(:;:TEncoding; constのエンコーディング文字列のconst FileNameに作成します // CASESENSITIVE、UseLocale:ブール値); 過負荷; オーバーライド; 3.2。1 、其中以下构建解构及属性方法是上述TCustomIniFile继承以外的: コンストラクタ の作成(CASESENSITIVE、UseLocale:ブール値); デストラクタは 破棄します。上書きします。 手順クリア; 関数の削除(constのキー:文字列):ブール; プロパティ数:整数読みGetCountのを。 プロパティ CASESENSITIVE:ブール読み GetCaseSensitive 書き込みをSetCaseSensitive; プロパティ useLocale:ブール読む GetUseLocale 書き込みSetUseLocale; --------------------- 著者:pulledup 出典:CSDN オリジナル:HTTPS:// blog.csdn.net/ pulledup /記事/詳細/ 93076568 著作権:この記事はブロガーのオリジナルの記事、再現され、ボーエンのリンクを添付してください!