PropertiesFile4Delphi
1.0.0
PropertiesFile4Delphi 包含一个用于处理key=value格式配置文件的库。
很多时候,由于各种原因,需要从配置机制开始对应用程序进行参数化。在 Delphi 中,通常使用 INI 文件来存储设置,但使用这些文件有点重复且效率低下。 API PropertiesFile4Delphi 通过配置文件取代 INI 文件来促进这项工作。它是一个用于管理简单文本文件的 API,这些文件使用key=value语法编写,每行存储一个唯一的键。
要启动并运行本地副本,请按照以下简单步骤操作。
要使用此库,需要更新版本的 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
了解更多信息。
要联系我们,请使用以下选项:
https://github.com/ezequieljuliano/PropertiesFile4Delphi