C++读写dbf文件头,向第12-13字节里添加两个校验字符

本人C++小白,如有错误,还请指正,谢谢。

写这个函数,是因为本人项目里用到了。

/**
描述:测试读取dbf,和写入dbf备用地址,校验字符
创建人:jk.zheng
创建时间:20151211
*/


#include "afx.h"
#include "stdio.h"

/**
从DBF文件头12-13字节上读取校验字符。
jk.zheng@20151211
*/
char* OnReadDbfHead(const char* DbfFileName,char str[2])
{
	 char *ch=str;
	FILE*   m_DbfFile_fp;       //****Dbf文件指针       
	//打开dbf文件
	if((m_DbfFile_fp=fopen(DbfFileName,"rb+"))==NULL)        
	{               
		return ch;        
	} 

	//指针跳到第12个字节位置,开始准备读取校验字符
	fseek(m_DbfFile_fp,12,0);
	//char ch[2];
	fread(ch,sizeof(char),2,m_DbfFile_fp); 
	
	//printf("%c%c",ch[0],ch[1]);
	
	fclose(m_DbfFile_fp);

	return ch;
}

/**
向DBF文件头里写入校验字符,在12-13字节上。
jk.zheng@20151211
*/
int OnWriteDbfHead(const char* DbfFileName,char str[2])
{
	char *ch=str;
	FILE*   m_DbfFile_fp;       //****Dbf文件指针       
	//打开dbf文件
	if((m_DbfFile_fp=fopen(DbfFileName,"rb+"))==NULL)        
	{               
		return 0;        
	}        
	//向备用地址写入两个字符'y','k',用来验证使用
	
	fseek(m_DbfFile_fp,12,0);
	
	int ret;
	ret = fwrite(ch,sizeof(char),2,m_DbfFile_fp);
	
	//printf("%d",ret);
	return ret;
}

int _tmain(int argc, _TCHAR* argv[])
{
	const char* dbffilename;
	dbffilename="C:\\Users\\jkzheng\\Desktop\\a1537zkk.dbf";
	
	//写入校验字符
	/**
	char str[2]={'y','k'};
	int ret;
	ret = OnWriteDbfHead(dbffilename,str);
	if(ret=0){
		printf("%s","文件被占用!");
		return 0;
	}
	if(ret=2){
		printf("%s%d","写入校验字符成功!",ret);
	}else{
		printf("%s%d","写入校验字符失败!",ret);
	}
	*/
	//读取校验字符
	
	char str2[2];
	OnReadDbfHead(dbffilename,str2);
	if(sizeof(str2)!=2){
		printf("%s%d","读取校验字符长度不正确!",strlen(str2));
		return 0;
	}
	if(str2[0]!='y'&&str2[1]!='k'){
		printf("%s","读取校验字符有误!");
		return 0;
	}
	printf("%s%c%c\n","校验字符为:",str2[0],str2[1]);

	return 0;
}


CDBF文件读写类是一种用于读取和写入DBF文件的工具类。DBF文件是一种常见的数据库文件格式,用于存储表格数据。CDBF文件读写类提供了一系列方法,让我们可以轻松地对DBF文件进行读取和写入操作。 首先,CDBF文件读写类具有打开和关闭文件的方法。通过调用打开方法,我们可以打开一个DBF文件,并获得对该文件的读取和写入权限。使用关闭方法,我们可以在结束对文件的操作后,关闭该文件,释放对文件的占用。 其次,CDBF文件读写类还具有读取和写入记录的方法。通过调用读取方法,我们可以逐条地读取DBF文件中的记录,并将其以适当的格式返回。同样地,通过调用写入方法,我们可以将新的记录添加DBF文件中。 此外,CDBF文件读写类还支持对字段的操作。我们可以通过调用获取字段信息的方法,获取DBF文件中所有字段的详细信息,如字段名、长度、数据类型等。我们还可以通过调用设置字段信息的方法,来修改字段的属性。 最后,CDBF文件读写类还具有一些其他辅助方法。例如,我们可以调用判断文件是否存在的方法,来检查指定的DBF文件是否存在。我们还可以调用获取文件记录数的方法,获取DBF文件中记录的总数。 总的来说,CDBF文件读写类是一个功能强大的工具类,它使得我们可以在应用程序中方便地对DBF文件进行读取和写入操作。无论是读取DBF文件中的数据,还是往DBF文件添加新的数据,CDBF文件读写类都提供了简单易用的方法来实现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值