一个C的序列化库tpl
tpl(http://tpl.sourceforge.net/)是一个开源的小项目,其主要是提供一个可以序列化或反序列化C语言数据的一个API函数库。tpl号称是最有效率的也是最快的,它可以把你内存中的数据存放到文件中,并可以在你需要的时候用文件中反序例化到内存变量中。而且这个函数库没有依赖于别的函数库。
下面是一个简单的示例(来源于其主页)
把一个数组(“序号”和“人名”)序例化到文件中。
include "tpl.h"
int main(int argc, char *argv[]) {
tpl_node *tn;
int id=0;
char name, names[] = { "joe", "bob", "cary" };
tn = tpl_map("A(is)", &id, &name);
for(name=names[0]; id < 3; name=names[++id]) {
tpl_pack(tn,1);
}
tpl_dump(tn, TPL_FILE, "users.tpl");
tpl_free(tn);
}
把上面那个序列化到文件的“序号”和“人名”反序列化回来。
include "tpl.h"
int main(int argc, char *argv[]) {
tpl_node *tn;
int id;
char *name;
tn = tpl_map("A(is)", &id, &name);
tpl_load(tn, TPL_FILE, "users.tpl");
while ( tpl_unpack(tn,1) > 0 ) {
printf("id %d, user %s\n", id, name);
free(name);
}
tpl_free(tn);
}
更详细的使用说明请看其文档:
http://tpl.sourceforge.net/userguide.html
转载于酷壳CoolShell 无删改 仅以此纪念陈皓(左耳朵耗子)
后台项目,有个后门接口是用来修复某些状态异常的数据,使用频次也不高。因为一些原因,这个功能不能放在管理系统上,需要使用的时候,运维上去 curl 执行一下。 平常一说到后门,一…
用于紫薇斗数排盘的 flutter 库; 功能特点: 根据阳历日期计算农历日期 计算八字信息 计算紫微斗数星盘信息 提供星盘各宫位的详细信息,流年,流月,流日等运势分析 支持…
一个内网服务器,一个外网服务器(数据定时采集服务器),现在想把外网服务器的增量数据同步到内网服务器(初始数据和表结构可以导成 sql 到目标库执行),表结构完全相同,可以有一定…
合速度