原文发布时间为:2008-10-16 —— 来源于本人的百度文章 [由搬家工具导入]

//将需要导入的文件上传到服务器  
        string filePath = "", fileExtName = "";  
        //string myFileName;//用不到,但也写上吧  
        string myPath;  
        string FullName = "";//保存文件的完整文件名  
        if(fileUp.PostedFile.FileName!="")  
        {  
            //取得文件路径   
            filePath = fileUp.PostedFile.FileName;  
            //取得文件扩展名  
            fileExtName = filePath.Substring(filePath.LastIndexOf(".")+1);  
            //判断是否为Excel文件  
            if (fileExtName == "xls")  
            {  
                try
                {  
                    //取得与web服务器上指定的虚拟路径相对应的物理路径  
                    myPath = Server.MapPath("Upfiles/");  
                    //取得文件名  
                    //myFileName = filePath.Substring(filePath.LastIndexOf("")+1);  
                    //取得当前时间,以“时时分分秒秒”来命名,以免重复  
                    string strDateName = DateTime.Now.ToString("hhmmss");  
                    //保存上传文件到指定目录  
                    FullName = myPath + strDateName + "." + fileExtName;  
                    fileUp.PostedFile.SaveAs(FullName);  
                }  
                catch (Exception ex)  
                {  
                    Response.Write(ex.Message);  
                }  
            }  
            else
            {  
                Page.RegisterStartupScript("","<SCRIPT>alert('文件格式不正确');</SCRIPT>");  
                return;  
            }  
        }  
        //读取Excel中的内容  
        string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FullName + ";Extended Properties=Excel 8.0;";  
        OleDbConnection connxls = new OleDbConnection(strConn);  
        if(connxls.State.ToString()=="Closed")  
        {  
            connxls.Open();  
        }  
        string sqlExcel=("select * from [Sheet1$]");  
        OleDbDataAdapter myDa = new OleDbDataAdapter(sqlExcel,connxls);  
        DataSet myDs = new DataSet();  
        myDa.Fill(myDs);  
        if (myDs.Tables[0].Rows.Count > 0)  
        {  
            /***************将数据绑定到gridview*****************************************************/
            try
            {  

                GridView1.DataSource = myDs.Tables[0].DefaultView;  
                GridView1.DataBind();  
   
            }  
            catch (Exception ex)  
            {  
                Response.Write("读取出错" + ex.Message);  
            }  
            /***************绑定完成******************************************************************/

            /********将数据导入到数据库,如果有对应的SQLserver2000数据库,要求字段要一一对应**********/
            string mySql = "";  
            //链接SQLserver2005数据库  
            string sqlConn = "server=.\\SQLEXPRESS;database=learning;user id=sa;pwd=sasasa";  
            SqlConnection con = new SqlConnection(sqlConn);  
            if(con.State.ToString()=="Closed")  
            {  
                con.Open();  
            }  
            SqlCommand myCmd = new SqlCommand();  
            //将数据逐行写入到数据库中  
            for (int i = 0; i < myDs.Tables[0].Rows.Count; i++)  
            {  
                //数据库中三个字段,所以插入三列  
                mySql = ("insert into myInfo(myname,sex,mylike) values('" + myDs.Tables[0].Rows[i][0].ToString() + "',"+  
                         "'" + myDs.Tables[0].Rows[i][1].ToString() + "','" + myDs.Tables[0].Rows[i][2].ToString() + "')");  
                myCmd.Connection = con;  
                myCmd.CommandText = mySql;  
                try
                {  
                    myCmd.ExecuteNonQuery();  
                }  
                catch (Exception ex)  
                {  
                    Response.Write("将数据插入数据库时出错" + ex.Message);  
                }  
            }  
            Response.Write("<SCRIPT>alert('数据已成功导入到数据库!');</SCRIPT>");  
            if(con.State.ToString()=="Open")  
            {  
                con.Close();  
            }  
            /*********导入数据库完成******************************************************************/
        }  
        else
        {  
            Page.RegisterStartupScript("","<SCRIPT>alert('Excel中没有数据!');</SCRIPT>");  
        }  
        if(connxls.State.ToString()=="Open")  
        {  
            connxls.Close();  
        }  

gridview读取Excel文件中的数据,并将其导入数据库的更多相关文章

  1. 用python的pandas读取excel文件中的数据

    一.读取Excel文件   使用pandas的read_excel()方法,可通过文件路径直接读取.注意到,在一个excel文件中有多个sheet,因此,对excel文件的读取实际上是读取指定文件.并 ...

  2. matlab读取excel文件中的数据

    1.读取sheet1中的所有数据 1.1首先我们建立一个sheet表,表名为‘111’ 1.2 默认这些文本以及数字都放在sheet1中,我们将此excel选入当前工作目录(必要步骤), 选入当前工作 ...

  3. Newtonsoft.Json读取txt文件中json数据并存到SQL service 数据库!

    using System; using System.Collections.Generic; using System.Text; using System.IO; using Newtonsoft ...

  4. Java读取、写入、处理Excel文件中的数据(转载)

    原文链接 在日常工作中,我们常常会进行文件读写操作,除去我们最常用的纯文本文件读写,更多时候我们需要对Excel中的数据进行读取操作,本文将介绍Excel读写的常用方法,希望对大家学习Java读写Ex ...

  5. [Python]将Excel文件中的数据导入MySQL

    Github Link 需求 现有2000+文件夹,每个文件夹下有若干excel文件,现在要将这些excel文件中的数据导入mysql. 每个excel文件的第一行是无效数据. 除了excel文件中已 ...

  6. 读取Excel文件中的单元格的内容和颜色

    怎样读取Excel文件中的单元格的内容和颜色 先创建一个Excel文件,在A1和A2中随意输入内容,设置A1的字体颜色为红色,A2的背景为黄色.需要 using Excel = Microsoft.O ...

  7. 利用java反射机制实现读取excel表格中的数据

    如果直接把excel表格中的数据导入数据库,首先应该将excel中的数据读取出来. 为了实现代码重用,所以使用了Object,而最终的结果是要获取一个list如List<User>.Lis ...

  8. 用Python的pandas框架操作Excel文件中的数据教程

    用Python的pandas框架操作Excel文件中的数据教程 本文的目的,是向您展示如何使用pandas 来执行一些常见的Excel任务.有些例子比较琐碎,但我觉得展示这些简单的东西与那些你可以在其 ...

  9. .Net读取Excel文件时丢失数据的问题 (转载)

    相信很多人都试过通过OleDB读取Excel文件,这种方法效率十分高,只是有一点会让人十分头痛,就是当一列中既有混合型数据,又有纯数据时,往往容易丢失数据. 百度过后,改连接字符串 “HDR=YES; ...

随机推荐

  1. AJPFX总结private关键字

    private关键字        什么是private关键字?                它是一个修饰符,代表私有的意思,它可以修饰成员变量和成员方法 private关键字的特点?        ...

  2. JVM内存区域参数配置

    转自:https://www.jianshu.com/p/5946c0a414b5 需要提前了解的知识点: JVM内存模型 JVM垃圾回收算法 下图是JVM内存区域划分的逻辑图   JVM内存区域逻辑 ...

  3. SQLite运算符

    SQLite运算符 SQLite的运算符是什么? 运算符是一个保留字或一个字符主要用于SQLite语句的WHERE子句来执行操作,如比较和算术运算. 操作符用于指定条件的SQLite语句和作为连词在一 ...

  4. Python matlab octave 矩阵运算基础

    基础总结,分别在三种软件下,计算 求逆矩阵 矩阵转置 等运算,比较异同 例子:正规方程法求多元线性回归的最优解 θ=(XTX)-1XTY octave: pwd()当前目录 ones() zeros( ...

  5. linux 复制文件夹内所有文件到另一个文件夹

    cp -Rf /home/user1/* /root/temp/将 /home/user1目录下的所有东西拷到/root/temp/下而不拷贝user1目录本身.即格式为:cp -Rf 原路径/ 目的 ...

  6. ssh 带密码私钥 输入密码

    $ssh-agent bash $ssh-add -k ~/.ssh/id_rsa Enter passphrase for /home/ubuntu/.ssh/id_rsa: Identity ad ...

  7. JSP常用的几种跳转方式

    一, 使用href超链接标记              (客户端跳转) 二, 提交表单                           (客户端跳转) <form name="fo ...

  8. 题解 洛谷P3622/BZOJ1151【[APIO2007]动物园】

    这一道题,我也是搞了很久才搞懂的(也就两个多小时). 感谢Rayment大佬的题解! 我们进入正题. 对于一个笼子里的动物,我们可以选择撤走或不撤走,可以用0和1来表示,很容易就想到二进制,想到状压d ...

  9. oslo.messaging

    oslo.messaging oslo.messaging库为OpenStack各个项目使用RPC和事件通知(Event Notification)提供了一套统一的接口.代码库位于https://gi ...

  10. 前端基础之CSS_2

    摘要 盒子模型 浮动 清除 溢出 定位 模态框 rgba 与 opacity透明区别  一.CCS盒子模型 margin:标签与标签之间的距离,主要用于控制标签周围间的间隔,从视觉上达到相互分开的目的 ...