当前位置: 技术问答>linux和unix
紧急求救:关于文件操作的问题??详见内
来源: 互联网 发布时间:2015-03-24
本文导语: 本人想用文件存储事件日志缓存,要实现从文件首读取日志记录,在文件尾增加新纪录。已经读取的记录需删除掉,请问有何好办法? | 用数据库或者linux下的文件数据库 NAME dbopen...
本人想用文件存储事件日志缓存,要实现从文件首读取日志记录,在文件尾增加新纪录。已经读取的记录需删除掉,请问有何好办法?
|
用数据库或者linux下的文件数据库
NAME
dbopen - database access methods
SYNOPSIS
#include
#include
#include
DB *
dbopen(const char *file, int flags, int mode, DBTYPE type,
const void *openinfo);
NAME
dbopen - database access methods
SYNOPSIS
#include
#include
#include
DB *
dbopen(const char *file, int flags, int mode, DBTYPE type,
const void *openinfo);
|
这个问题最关键的地方就是如何删除文件首的记录。
1、你可以首先以"r"方式找开这个文件(令:A),把所有的内容读入到tmpfile()临时文件(令:B)中,然后关闭它。
2、把B文件的指针定位到你已经读过的日志后面,然后从这里开始把所有的内容读入再写入到A文件中,在写之前要以"w"方式打开A文件。
1、你可以首先以"r"方式找开这个文件(令:A),把所有的内容读入到tmpfile()临时文件(令:B)中,然后关闭它。
2、把B文件的指针定位到你已经读过的日志后面,然后从这里开始把所有的内容读入再写入到A文件中,在写之前要以"w"方式打开A文件。