TDataFile
1.0.0
该课程的工作方式与标准修剪具有许多类似方法的方式相似,但对于二进制文件中的存储数据而言,功能更强大。该类还支持基本的XOR编码,以进一步争夺二进制文件。
内置数据类型与值一起存储,可以在阅读之前检查它们。
任何写操作都会自动保存到打开的文件中。
Tdatafile支持以下类型:
构造函数创建了tdatafile的新实例。
constructor Create(const FileName: string; readonly: boolean = false);
参数文件名指定您打开或创建数据文件的路径和文件名。
参数readonly指定文件是否为ReadOnly打开。在可读模式下,写功能将无能为力。
如果要使用内置编码,请在创建类对象之后设置CodeKey属性。
var df: TDataFile;
df := TDataFile.Create('filename');
df.CodeKey := 'key used to encode data';
| 功能 | 参数 | 返回类型 | 信息 |
|---|---|---|---|
| getectionNames | 列表:TSTRINGS | 没有任何 | 返回文件中现有部分的列表 |
| getValueNames | 部分:字符串;列表:TSTRINGS | 没有任何 | 返回指定部分中现有值的列表 |
| getValueNamesAndTypes | 部分:字符串;列表:TSTRINGS | 没有任何 | 在指定部分中返回现有值及其数据类型的列表。使用list.names []和list.values []进行数据 |
| getValuetype | 部分,身份:字符串 | tdftype | 返回指定值的数据类型 |
| getValuetypeastring | 部分,身份:字符串 | 细绳 | 与getValuetype相同,但将数据类型返回为字符串 |
| SectionExists | 部分:字符串 | 布尔 | 检查指定部分是否存在 |
| Valuexists | 部分,身份:字符串 | 布尔 | 检查该值中是否存在 |
| readdata | 章节,身份:字符串; PBUF:指针 | 整数 | 低级别功能可以读取存储在指定指针的任何数据 |
| readstream | 章节,身份:字符串;流:Tstream | 整数 | 从数据文件中读取流 |
| 读取 | 章节,身份:字符串;默认:ansistring | ansistring | 从数据文件中读取ANSI字符串。如果标识符不存在,请返回默认值 |
| readstring | 章节,身份:字符串;默认值:字符串 | 细绳 | 从数据文件中读取一个Unicode字符串。如果标识符不存在,请返回默认值 |
| ReadInt8 | 章节,身份:字符串;默认值:int8 | INT8 | 阅读签名的8位整数 |
| ReadInt16 | 章节,身份:字符串;默认值:INT16 | INT16 | 阅读签名的16位整数 |
| Readuint8 | 章节,身份:字符串;默认值:UINT8 | UINT8 | 阅读未签名的8位整数 |
| Readuint16 | 章节,身份:字符串;默认值:UINT16 | UINT16 | 阅读未签名的16位整数 |
| ReadInteger,ReadInt32 | 章节,身份:字符串;默认值:整数 | 整数 | 阅读签名的32位整数 |
| ReadInt64 | 章节,身份:字符串;默认值:INT64 | INT64 | 阅读签名的64位整数 |
| Readuint32 | 章节,身份:字符串;默认值:UINT32 | Uint32 | 阅读未签名的32位整数 |
| Readuint64 | 章节,身份:字符串;默认值:UINT64 | Uint64 | 阅读未签名的64位整数 |
| 读取 | 章节,身份:字符串;默认值:单 | 单身的 | 阅读32位浮标 |
| 读取双重 | 章节,身份:字符串;默认值:double | 双倍的 | 阅读64位浮标 |
| 读取 | 章节,身份:字符串;默认值:货币 | 货币 | 读取货币价值 |
| readdateTime | 章节,身份:字符串;默认值:TDATETIME | TDATETIME | 阅读日期时间值 |
| 读书 | 章节,身份:字符串;默认值:布尔值 | 布尔 | 阅读布尔价值 |
| readstrings | 章节,身份:字符串;列表:TSTRINGS | 没有任何 | 在指定列表中读取字符串列表 |
| readfont | 章节,身份:字符串;字体:tfont | 没有任何 | 在指定的字体中读取字体设置(名称,样式,大小等) |
| 写 | 章节,身份:字符串; PBUF:指针;计数:整数;数据类型:tdftype = dfd_unknown | 整数 | 低级功能以编写存储在指定指针的任何数据 |
| writestream | 章节,身份:字符串;流:tstream; datatype:tdftype = dfd_stream | 整数 | 从数据文件中写下流 |
| Writeansistring | 章节,身份:字符串;价值:ansistring | 没有任何 | 从数据文件中写下ANSI字符串。如果标识符不存在,请返回默认值 |
| 写作 | 部分,身份,价值:字符串 | 没有任何 | 从数据文件中写一个Unicode字符串。如果标识符不存在,请返回默认值 |
| writeint8 | 章节,身份:字符串;价值:int8 | 没有任何 | 写一个签名的8位整数 |
| writeint16 | 章节,身份:字符串;值:INT16 | 没有任何 | 写一个签名的16位整数 |
| writeUint8 | 章节,身份:字符串;价值:UINT8 | 没有任何 | 写一个未签名的8位整数 |
| writeUint16 | 章节,身份:字符串;价值:UINT16 | 没有任何 | 写一个未签名的16位整数 |
| WriteInteger,writeint32 | 章节,身份:字符串;价值:整数 | 没有任何 | 写一个签名的32位整数 |
| writeint64 | 章节,身份:字符串;值:INT64 | 没有任何 | 写一个签名的64位整数 |
| writeUint32 | 章节,身份:字符串;价值:UINT32 | 没有任何 | 写一个未签名的32位整数 |
| writeUint64 | 章节,身份:字符串;价值:UINT64 | 没有任何 | 写一个未签名的64位整数 |
| 写作 | 章节,身份:字符串;价值:单个 | 没有任何 | 写一个32位浮子 |
| 写入 | 章节,身份:字符串;价值:双重 | 没有任何 | 写一个64位浮标 |
| WriteCurrency | 章节,身份:字符串;价值:货币 | 没有任何 | 写一个咖喱价值 |
| 写入 | 章节,身份:字符串;值:tdateTime | 没有任何 | 编写DateTime值 |
| 写布利安 | 章节,身份:字符串;价值:布尔值 | 没有任何 | 写一个布尔价值 |
| 写作 | 章节,身份:字符串;列表:TSTRINGS | 没有任何 | 在指定列表中写下字符串列表 |
| WriteFont | 章节,身份:字符串;字体:tfont | 没有任何 | 在指定的字体中编写字体设置(名称,样式,大小等) |
| 重命名 | Oldsection,Oldente,Newsection,Newident:String | 布尔 | 重命名标识符 |
| 删除 | 部分:字符串 | 没有任何 | 删除指定部分 |
| 删除 | 部分,身份:字符串 | 没有任何 | 删除指定的标识符 |
tdatafile被设计为与Delphi Xe一起使用。它可能与较旧的版本一起使用,但没有进行测试。
随附的编辑器是使用Delphi Ryo创建的,并且可能不会在较旧版本中编译。
Tdatafile的灵感来自原始的Degisy软件TDATAFILE。
DataFile编辑器是一种使用Tdatafile创建,查看和修改文件的应用程序。编辑器将添加一个带有密钥创建的元部分。使用它创建的文件中的日期,但是一旦添加自己的部分和值,就可以安全地删除。
用编辑器创建的部分将作为树显示,但是实际结构是平坦的,存储的实际截面名称是上部显示的完整路径。创建树时使用的分离器是斜线字符(“ / ”)。
代码和编辑都根据MIT许可发布。有关详细信息,请参见许可证文件。