VC 小工具里应用到excel做数据库时的查询与写入操作

最近开发用到了一些小工具,只要是在VC开发的UI里输入的数据要求保存到excel里,输入不能重复,按字段保存,因此这里面就用到了对excel里的读写与查询了。

下面函数先检查下excel文件是否存在,函数里使用了一个模板文件:

void YourClass::CheckBatchFile()
{
    CString sFile,sPath, sTmpFile, sErrorStr,sTempFile,sTempFileBk;
    int nIndex;
    FILE *fp;
    BOOL ret;
    //get system time
    CTime tm;
    tm=CTime::GetCurrentTime();


    //获取程序所在路径
    ::GetModuleFileName(NULL, sPath.GetBufferSetLength(_MAX_PATH+1), _MAX_PATH);
    nIndex = sPath.ReverseFind('\\');
    sFile = sPath.Mid(0,nIndex) + "\\";
    sTmpFile = sFile + g_AKeyTemplateName;
    sTempFile = sFile;
    sTempFileBk = sFile;
    sFile += g_AKeyFileName;<span style="font-family: Arial, Helvetica, sans-serif;">//</span><span style="font-family: Arial, Helvetica, sans-serif;">g_AKeyFileName</span><span style="font-family: Arial, Helvetica, sans-serif;">此变量是你所用excel文件的文件名,比如“database.xls”</span>
    sTempFile += "Temp.xls";
    //bk=0000000+日期.file
    sTempFileBk+="0000000"+tm.Format("%Y%m%d%H%M%S")+".file";

    fp = fopen((LPSTR)(LPCTSTR)sFile, "r" );

    if (fp)
    {
        fclose(fp);

        if(MessageBox(g_AKeyFileName + "文件已经存在,是否清除文件", TEXT("Note"), 
					 MB_ICONEXCLAMATION|MB_YESNO |MB_SYSTEMMODAL) == IDYES)
        {
            CopyFile(sFile,sTempFileBk, FALSE);
            ret = DeleteFile((LPSTR)(LPCTSTR)sFile);
            if (!ret)
            {
                sErrorStr.Format("删除文件%s失败", (LPSTR)(LPCTSTR)g_AKeyFileName);
                if (MessageBox(sErrorStr, TEXT(&#
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值