PropertiesFile4Delphi は、key=value形式の設定ファイルを処理するためのライブラリで構成されます。
多くの場合、さまざまな理由から、構成メカニズムから始めてアプリケーションをパラメーター化する必要があります。 Delphi では、INI ファイルを使用して設定を保存するのが一般的ですが、これらのファイルの操作は少し反復的で非生産的です。 API PropertiesFile4Delphi は、INI ファイルの使用を構成ファイルで置き換えることで、この作業を容易にします。これは、 key=value構文で記述され、行ごとに一意のキーを格納する単純なテキスト ファイルを管理するための API です。
ローカル コピーを起動して実行するには、次の簡単な手順に従います。
このライブラリを使用するには、Delphi IDE の更新バージョン (XE 以降) が必要です。
リポジトリのクローンを作成する
git clone https://github.com/ezequieljuliano/PropertiesFile4Delphi.git
IDE またはプロジェクトの「検索パス」を次のディレクトリに追加します。
PropertiesFile4Delphisrc
IPropertiesFile 型の変数を宣言し、TPropertiesFileStorage 実装を使用して、構成ファイルを作成または編集します。
uses
PropertiesFile,
PropertiesFile.Storage;
procedure Save;
var
propertiesFile: IPropertiesFile;
begin
propertiesFile := TPropertiesFileStorage.Create;
propertiesFile.PropertyItem['app.title'] := 'Properties File For Delphi';
propertiesFile.PropertyItem['app.version'] := '1.0.0';
propertiesFile.SaveToFile('application.properties');
end;
uses
PropertiesFile,
PropertiesFile.Storage;
procedure Load;
var
propertiesFile: IPropertiesFile;
begin
propertiesFile := TPropertiesFileStorage.Create;
propertiesFile.LoadFromFile('application.properties');
Self.Caption := propertiesFile.PropertyItem['app.title'] + '-' + propertiesFile.PropertyItem['app.version'];
end;
PropertiesFile4Delphi ライブラリは、一連のマッピング クラスを提供します。こうすることで、ソース コードでファイルを操作するのではなく、クラスを直接操作できるようになります。アプリケーションで構成メカニズムを使用するための最初のステップは、必要なパラメーターを格納する特定のクラスを作成し、それを[PropertiesFile]で書き留めて、 TPropertiesFileObjectクラスを継承することです。
マッピングの例:
uses
PropertiesFile.Mapping;
type
[PropertiesFile('security.properties')]
TSecurityConfig = class(TPropertiesFileObject)
private
[NotNull]
[PropertyItem('username')]
fUsername: string;
[NotNull]
[PropertyItem('password')]
fPassword: string;
public
property Username: string read fUsername write fUsername;
property Password: string read fPassword write fPassword;
end;
クラスが破棄されると、ファイルは自動的に保存されます。
procedure Load;
var
securityConfig: TSecurityConfig;
begin
securityConfig := TSecurityConfig.Create;
try
securityConfig.Username := 'admin';
securityConfig.Password := 'admin';
finally
securityConfig.Free;
end;
end;
クラスをインスタンス化すると、データがロードされます。
procedure Login;
var
securityConfig: TSecurityConfig;
begin
securityConfig := TSecurityConfig.Create;
try
Login(securityConfig.Username, securityConfig.Password);
finally
securityConfig.Free;
end;
end;
サポートされているフィールド マッピング:
提案された機能 (および既知の問題) のリストについては、未解決の問題を参照してください。
オープンソース コミュニティは、貢献によって、学び、インスピレーションを与え、創造するための素晴らしい場所になります。皆様の貢献は大変感謝しております。
git checkout -b feature/AmazingFeature
)git commit -m 'Add some AmazingFeature'
)git push origin feature/AmazingFeature
)APACHE LICENSEに基づいて配布されます。詳細については、 LICENSE
を参照してください。
お問い合わせいただくには、次のオプションを使用してください。
https://github.com/ezequieljuliano/PropertiesFile4Delphi