Excel信息导入

本文介绍了一种使用ASP.NET从Excel文件中读取数据并将其导入数据库的方法。具体步骤包括:解析文件路径、名称和扩展名;保存文件;连接到Excel文件作为数据源;使用OleDbDataAdapter填充DataSet;最后进行数据验证和处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

string XLS_Path="";
        string fileExtName = "";
        string XLS_Name = "";
        if (File1.PostedFile.ContentLength > 0)
        {

            XLS_Path = File1.PostedFile.FileName;
            XLS_Name = XLS_Path.Substring(File1.PostedFile.FileName.LastIndexOf("//")).Replace("//", "").Replace(XLS_Path.Substring(File1.PostedFile.FileName.LastIndexOf(".")), "");
            fileExtName = File1.PostedFile.FileName.Substring(File1.PostedFile.FileName.LastIndexOf("."));

            string fullName = Server.MapPath("../Employee/FJ/") + XLS_Name + fileExtName;
            string originalCategory = fullName.Substring(0, fullName.LastIndexOf(@"/"));
            if (!Directory.Exists(originalCategory))
            {
                Directory.CreateDirectory(originalCategory);
            }

            File1.PostedFile.SaveAs(Server.MapPath("../Employee/FJ/") + XLS_Name + fileExtName);
            XLS_Path = Server.MapPath("../Employee/FJ/") + XLS_Name + fileExtName;

            string ConStr = System.Configuration.ConfigurationManager.AppSettings["ConnString"];
            SqlConnection Conn = new SqlConnection(ConStr);
            string mystring = "Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = " + XLS_Path + ";Extended Properties=Excel 8.0";
            OleDbConnection cnnxls = new OleDbConnection(mystring);
            OleDbDataAdapter myDa = new OleDbDataAdapter("select * from [" + XLS_Name + "$]", cnnxls);//Sheet1
            DataSet myDs = new DataSet();
            try
            {
                myDa.Fill(myDs);
            }
            catch
            {
                Response.Write("<script language=javascript>alert('数据导入失败,请检查Excel文档!');</script>");
                return;
            }

            HttpContext.Current.Session["Ds"] = myDs;

            File.Delete(XLS_Path);

            if (myDs.Tables[0].Rows.Count <= 0)
            {
                Response.Write("<script language=javascript>alert('文件中可能没有数据,请检查后重新导入!');</script>");
                return;
            }
            else
            {
                for (int i = 0; i < myDs.Tables[0].Rows.Count; i++)
                {
                    //数据操作
                    model.XM = myDs.Tables[0].Rows[i]["姓名"].ToString().Trim();
                    //... ...
                }
                JScript.Alert("人员信息导入成功");
            }
        }
        else
        {
            Response.Write("<script language=javascript>alert('请选择文件后再上传!!!');</script>");
            return;
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值