Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
File 如何在Delphi中创建结构化文件_File_Delphi - Fatal编程技术网

File 如何在Delphi中创建结构化文件

File 如何在Delphi中创建结构化文件,file,delphi,File,Delphi,我想创建一个结构化文件来存储: 类型1数据如下: Name: UnicodeString; ID: Integer; Content: UnicodeString; Img: TBitmap; -Name: String; -BitmapDir + Bitmap1: TBitmap; + Bitmap2: TBitmap; +..............: TBitmap; + BitmapN: TBitmap; -Database + IniFile: TINIFiles; 在它的功能中,

我想创建一个结构化文件来存储:

类型1数据如下:

Name: UnicodeString;
ID: Integer;
Content: UnicodeString;
Img: TBitmap;
-Name: String;
-BitmapDir
+ Bitmap1: TBitmap;
+ Bitmap2: TBitmap;
+..............: TBitmap;
+ BitmapN: TBitmap;
-Database
+ IniFile: TINIFiles;
在它的功能中,我需要它存储大量的记录,并且能够查找给定的记录并计算记录的总数

在另一个文件中,我希望按如下方式存储类型2数据:

Name: UnicodeString;
ID: Integer;
Content: UnicodeString;
Img: TBitmap;
-Name: String;
-BitmapDir
+ Bitmap1: TBitmap;
+ Bitmap2: TBitmap;
+..............: TBitmap;
+ BitmapN: TBitmap;
-Database
+ IniFile: TINIFiles;
你知道创建这些文件的方法吗


我知道我可以使用库uKBDynamic使用示例SimpleStorage创建类型2的文件,但我真的不知道它以及如何使用它。

您可以使用。它是一个基于COM的api,允许您编写几乎嵌入完整文件系统的文件。在这种情况下,您可以编写一个流列表,每个流都包含一条记录的数据。

您应该考虑流、XML/JSON或数据库(例如SQLite/Firebird)。你最喜欢什么?把它放在嵌入式db@user您需要与其他程序/系统共享此文件吗?不要滚动您自己的二进制格式。嵌入式数据库(如SQLite)可以用于大量数据,并且具有高性能(很好)和可靠性(必须是ave)。滚动您自己的二进制文件是一扇通往受伤世界的大门。对于小型可互操作且可读性强的内容,请使用JSON。您作为其一部分使用的uKBDynamic单元看起来可能会被自己的作者弃用。