zoukankan      html  css  js  c++  java
  • 怎样读取本地Excel数据,并保存到时服务器

    private DataSet ReadExcelFile()
            {
                string sArgs;
                string filePath = "";
                string fileExtend = "";//文件扩展名
                int fileSize = 0;//文件大小

                filePath = this.fileDaoRu.PostedFile.FileName.ToLower().Trim();

                //取得上传前的文件(存在于客户端)的文件或文件夹的名称,组成数组.例如:C:aaaa.txt,那么Names.lenth就为3
                string[] names = filePath.Split('\\');
                //取得文件名
                string name = names[names.Length - 1];
                string serverPath = this.Server.MapPath("\\");//获得服务器端的根目录

                //判断是否有该目录
                if (!Directory.Exists(serverPath + "file"))
                {
                    Directory.CreateDirectory(serverPath + "file");
                    serverPath = serverPath + "file";
                }
                filePath = serverPath + name;
                //如果存在,删除文件
                //if(File.Exists(filePath))
                //{
                //    File.Delete(filePath);
                //}
                // 上传文件
                this.fileDaoRu.PostedFile.SaveAs(filePath);

                //得到文件的大小
                fileSize = this.fileDaoRu.PostedFile.ContentLength;
                //得到扩展名
                fileExtend = filePath.Substring(filePath.IndexOf("."));
                if (fileSize == 0)
                {
                    sArgs = @" <script language=javascript>window.alert( '找不到该文件!' ); </script>";
                    Page.Response.Write(sArgs);
                    return null;
                }
                if (fileExtend != ".xls")
                {
                    sArgs = @" <script language=javascript>window.alert( '请确认您所导入的文件是否EXCEL文件!!' ); </script>";
                    Page.Response.Write(sArgs);
                    return null;
                }
                DataSet ds = new DataSet();
             
                try
                {
                    OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=Excel 8.0;Data Source=" + filePath);
                    if (conn.State != ConnectionState.Open)
                    {
                        conn.Open();
                    }
                    else
                    {
                        sArgs = @" <script language=javascript>window.alert( 'EXCEL文件正在使用!' ); </script>";
                        Page.Response.Write(sArgs);
                        return null;
                    }
                    OleDbCommand com = conn.CreateCommand();
                    com.CommandText = "select * from [sheet1$]";
                    com.CommandType = CommandType.Text;
                    OleDbDataAdapter adapter = new OleDbDataAdapter(com);
                 

                    adapter.Fill(ds);
                    adapter.Dispose();
                    conn.Close();
                    conn.Dispose();
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
             
                return ds;
            }

    这个是单独的导一个EXCEL文件数据,先上传到服务器,然后获取EXCEL文件数据添加在DataSet中,然后遍历DataSet插入数据库
  • 相关阅读:
    设计模式 策略模式
    Java 集合 LinkedList的ListIterator
    Java 集合 JDK1.7的LinkedList
    Java 集合 集合与数组之间的转换
    Java Object 对象拷贝答疑
    Java Object 对象拷贝
    Java 集合 fail-fast机制 [ 转载 ]
    .net知识点汇总
    Javascript知识点汇总-初级篇
    Javascript实用技巧
  • 原文地址:https://www.cnblogs.com/cxy521/p/1403004.html
Copyright © 2011-2022 走看看