xls数据导入sqlite数据库

  protected void btn_ok_Click(object sender, EventArgs e)
    {
        try
        {
            string x=txtpath.Text;
            DataSet ds = GetConnect(x);
            DataTable xDataTable = ds.Tables[0];
            for (int i = 0; i < xDataTable.Rows.Count; i++)
            {
                var voucherscode = (xDataTable.Rows[i ][0] + "").Substring(1).Trim();
                var startime = Convert.ToDateTime(xDataTable.Rows[i ][1]);
                var endtime = Convert.ToDateTime(xDataTable.Rows[i][2]);
                var conversionProduct =  xDataTable.Rows[i ][3];
                var status = 0;
                SQLiteHelper.ExecuteNonQuery("Insert into [Vouchers] (VouchersCode,StarTime,EndTime,ConversionProduct,Status)values('" + voucherscode + "','" + startime + "','" + endtime + "','" + conversionProduct + "','" + status + "')");
               
            }
            lblshow.InnerText = "导入成功!";
        }
        catch(Exception ex)
        {
            lblshow.InnerText = "导入失败!";
        }
    }
    /// <summary>
    /// 导出EXCEL表中的数据到 myDataSet
    /// </summary>
    public static DataSet GetConnect(string FilePath)
    {
        DataSet myDataSet = new DataSet();
        string strCon = "Provider=Microsoft.Jet.Oledb.4.0; Data Source=" + FilePath + "; Extended Properties=\"Excel 8.0; HDR=YES; IMEX=1;\"";
        if (Path.GetExtension(FilePath).ToLower() == ".xlsx")
            strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + FilePath + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1'";
        OleDbConnection myConn = new OleDbConnection(strCon);
        //条件查询EXCEL表
        string strCom = " SELECT * FROM [Sheet1$] ";
        myConn.Open();
        //打开数据链接,得到一个数据集
        OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom, myConn);
        //创建一个 DataSet对象
 
        //得到自己的DataSet对象
        myCommand.Fill(myDataSet, "[Sheet1$]");
        //关闭此数据链接
        myConn.Close();
        return myDataSet;
    }
posted @   Pavilion  阅读(478)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示