zoukankan      html  css  js  c++  java
  • 【20160924】GOCVHelper MFC增强算法(5)

    CString ExportListToExcel(CString  sExcelFile,CListCtrlpListCString strTitle)
        {
            CString warningStr;
            if (pList->GetItemCount ()>0) {    
                CDatabase database;
                
                
                CString sSql;
                CString tableName = strTitle;
     
                // 检索是否安装有Excel驱动 "Microsoft Excel Driver (*.xls)" 
                CString sDriver;
                sDriver = GetExcelDriver();
                if (sDriver.IsEmpty())
                {
                    // 没有发现Excel驱动
                    AfxMessageBox("没有安装Excel! 请先安装Excel软件才能使用导出功能!");
                    return NULL;
                }
     
                ///默认文件名
            /*    CString sExcelFile; 
                if (!GetDefaultXlsFileName(sExcelFile))
                    return NULL;*/
     
                // 创建进行存取的字符串
                sSql.Format("DRIVER={%s};DSN='';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB="%s";DBQ=%s",sDriversExcelFilesExcelFile);
     
                // 创建数据库 (既Excel表格文件)
                ifdatabase.OpenEx(sSql,CDatabase::noOdbcDialog) )
                {
                    // 创建表结构
                    int i;
                    LVCOLUMN columnData;
                    CString columnName;
                    int columnNum = 0;
                    CString strH;
                    CString strV;
     
                    sSql = "";
                    strH = "";
                    columnData.mask = LVCF_TEXT;
                    columnData.cchTextMax =100;
                    columnData.pszText = columnName.GetBuffer (100);
                    for(i=0;pList->GetColumn(i,&columnData);i++)
                    {
                        if (i!=0)
                        {
                            sSql = sSql + ", " ;
                            strH = strH + ", " ;
                        }
                        sSql = sSql + " " + columnData.pszText +" TEXT";
                        strH = strH + " " + columnData.pszText +" ";
                    }
                    columnName.ReleaseBuffer ();
                    columnNum = i;
     
                    sSql = "CREATE TABLE " + tableName + " ( " + sSql +  " ) ";
                    database.ExecuteSQL(sSql);
     
     
                    // 插入数据项
                    int nItemIndex;
                    for (nItemIndex=0;nItemIndex<pList->GetItemCount ();nItemIndex++){
                        strV = "";
                        for(i=0;i<columnNum;i++)
                        {
                            if (i!=0)
                            {
                                strV = strV + ", " ;
                            }
                            strV = strV + " '" + pList->GetItemText(nItemIndex,i) +"' ";
                        }
     
                        sSql = "INSERT INTO "tableName 
                            +" ("strH + ")"
                            +" VALUES("strV + ")";
                        database.ExecuteSQL(sSql);
                    }
     
                }      
     
                // 关闭数据库
                database.Close();
                return sExcelFile;
            }

        }

    图像处理生成了结果,如果需要保存为报表文件,或者想进一步存入数据库中,Excel都是非常好的选择。在这里集成了vc知识库中提供的代码。版权为
        //////////////////////////////////////////////////////////////////////////////
        //名称:GetExcelDriver
        //功能:获取ODBC中Excel驱动
        //作者:徐景周(jingzhou_xu@163.net)
        //组织:未来工作室(Future Studio)
        //日期:2002.9.1
        /////////////////////////////////////////////////////////////////////////////
    使用的时候,只需要将生成的结果填入CListCtrl控件中,而后直接到处就可以。也就是把excel输出的问题变成了向CListCtrl控件输出的问题。同时代码中还提供了能够直接写到两个sheet中的方法,可供参考





  • 相关阅读:
    C语言-if语句
    C语言-表达式
    C语言-基础
    Java for LeetCode 187 Repeated DNA Sequences
    Java for LeetCode 179 Largest Number
    Java for LeetCode 174 Dungeon Game
    Java for LeetCode 173 Binary Search Tree Iterator
    Java for LeetCode 172 Factorial Trailing Zeroes
    Java for LeetCode 171 Excel Sheet Column Number
    Java for LeetCode 169 Majority Element
  • 原文地址:https://www.cnblogs.com/jsxyhelu/p/5907526.html
Copyright © 2011-2022 走看看