zoukankan      html  css  js  c++  java
  • C# csv.excel导入

     string clientFilename = FileUpload1.PostedFile.FileName.ToLower();
                string serverFilename = "";
                if (clientFilename == "")
                {
                    return;
                }
                if (clientFilename.ToLower().IndexOf(".xlsx") > 0)
                {
                    serverFilename = ".xlsx";
                }
                else
                {
                    if (clientFilename.ToLower().IndexOf(".csv") > 0)
                    {
                        serverFilename = ".csv";
                    }
                    else if (clientFilename.ToLower().IndexOf(".xls") > 0 && clientFilename.EndsWith("xls"))
                    {
                        serverFilename = ".xls";
                    }
                    else
                    {
                        return;
                    }
                }
                string type = serverFilename;
                serverFilename = "~/uploadexcel/" + "Test" + DateTime.Now.Year.ToString()
               + (DateTime.Now.Month > 9 ? DateTime.Now.Month.ToString() : "0" + DateTime.Now.Month.ToString())
               + (DateTime.Now.Day > 9 ? DateTime.Now.Day.ToString() : "0" + DateTime.Now.Day.ToString())
               + (DateTime.Now.Hour > 9 ? DateTime.Now.Hour.ToString() : "0" + DateTime.Now.Hour.ToString())
               + (DateTime.Now.Minute > 9 ? DateTime.Now.Minute.ToString() : "0" + DateTime.Now.Minute.ToString())
               + (DateTime.Now.Second > 9 ? DateTime.Now.Second.ToString() : "0" + DateTime.Now.Second.ToString())
               + DateTime.Now.Millisecond.ToString() + serverFilename;

                serverFilename = MapPath(serverFilename);
                if (File.Exists(serverFilename))
                {
                    File.Delete(serverFilename);
                }
                FileUpload1.SaveAs(serverFilename);//上传文件
                if (type == ".csv")
                {
                    string c = serverFilename.Substring(0, serverFilename.LastIndexOf(@"\") + 1);//取到文件的上一级路径
                    string b = serverFilename.Substring(serverFilename.LastIndexOf(@"\") + 1);//取到文件名           
                    string strConn = @"Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq= " + c;
                    strConn += ";Extensions=asc,csv,tab,txt;";
                    OdbcConnection objConn = new OdbcConnection(strConn);
                    DataSet ds = new DataSet();

                    try
                    {
                        string strSql = @"select * from " + b;
                        OdbcDataAdapter odbcCSVDataAdapter = new OdbcDataAdapter(strSql, objConn); 
                        odbcCSVDataAdapter.Fill(ds);
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }
                }
                else if(type==".xls" || type==".xlsx")
                {
                    DataSet ds = new DataSet();
                    string sconn="";
                    if (type == ".xls")
                    {
                        sconn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" + serverFilename + "';Extended Properties='Excel 8.0;HDR=YES;'";
                    }
                    else
                    {
                        sconn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='" + serverFilename + "';Extended Properties='Excel 12.0;HDR=YES'";
                    }
                    OleDbConnection conn = new OleDbConnection(sconn);
                    OleDbDataAdapter odda = new OleDbDataAdapter("select * from [Sheet1$]", conn);
                    odda.Fill(ds);
                }

  • 相关阅读:
    再谈 Devstack(Rocky)
    记一次性能测试与优化经历
    Nova rebuild for boot from volume issue
    OpenStack RPM Sample 解析
    [Cinder] 存储 Qos
    Octavia Rocky UDP 负载均衡功能试验
    Keepalived + LVS-NAT 实现高可用四层 TCP/UDP 负载均衡器
    LVS 四层 TCP/UDP 负载均衡器
    集群的定义以及类别定义
    对程序员又了解了一些
  • 原文地址:https://www.cnblogs.com/codeloves/p/3011752.html
Copyright © 2011-2022 走看看