zoukankan      html  css  js  c++  java
  • Excel导出到DataSet

    #region 导入excel 返回Dataset
    public DataSet ExecleDataSet(string filename, string file, string Type)
    {
    string strConn = "";
    if (Type.Equals(".xlsx"))
    {
    strConn = "Provider=Microsoft.Ace.OleDb.12.0;Data Source=" + filename +
    ";Extended Properties='Excel 12.0 Xml; HDR=YES; IMEX=1'";
    }
    else
    {
    strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + filename +
    ";Extended Properties='Excel 8.0; HDR=YES; IMEX=1'";
    }
    OleDbConnection conn;
    DataSet ds = new DataSet();
    conn = new OleDbConnection(strConn);
    conn.Open();
    //OleDbDataAdapter odda = new OleDbDataAdapter("select * from [Sheet1$]", conn);
    //odda.Fill(ds, file);

    OleDbDataAdapter myCommand = null;
    DataTable dt = new DataTable();

    //返回Excel的架构,包括各个sheet表的名称,类型,创建时间和修改时间等
    DataTable dtSheetName = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" });


    //包含excel中表名的字符串数组
    string[] strTableNames = new string[dtSheetName.Rows.Count];
    for (int k = 0; k < dtSheetName.Rows.Count; k++)
    {
    strTableNames[k] = dtSheetName.Rows[k]["TABLE_NAME"].ToString();
    if (strTableNames[k].IndexOf("$") != -1)
    {
    string strExcel = "select * from [" + strTableNames[k] + "]";
    myCommand = new OleDbDataAdapter(strExcel, conn);
    myCommand.Fill(ds, strTableNames[k]);
    }
    }
    conn.Close();
    return ds;
    }
    #endregion

    if (FileUpload1.HasFile)
    {
    if (FileUpload1.PostedFile.ContentLength < 1000000000)
    {
    string isxls = "";
    string fistName = "";
    string savePath = "";
    string strdt = "";
    DataTable dt;
    try
    {
    isxls = System.IO.Path.GetExtension(FileUpload1.FileName).ToString().ToLower();
    fistName = System.IO.Path.GetFileName(FileUpload1.FileName).ToString();
    //if (isxls != ".xls") { Label1.Text = "出现异常:请选择正确的Excel文件!"; return; } //检查文件是不是Excel
    //文件名组装
    strdt = DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";
    //获取路径
    savePath = Server.MapPath("/Upload/" + strdt);
    //文件移动到指定位置
    FileUpload1.PostedFile.SaveAs(savePath);
    }
    catch
    {
    lab_message.Text = Resources.global1.teap_errorupload;
    }
    try
    {
    DataSet ds=ExecleDataSet(savePath, strdt, isxls);

  • 相关阅读:
    ReflectionException: There is no getter for property named
    iframe发送post请求
    wget已安装但命令没找到
    linux性能观察命令
    ELK搭建
    python之中特性(attribute)与属性(property)有什么区别?
    Django中的日志详解
    创建fastdfs_nginx容器及nginx配置
    2. 顺序表 数据结构与算法(python)
    Ubuntu安装和卸载搜狗输入法
  • 原文地址:https://www.cnblogs.com/jcz1206/p/3540156.html
Copyright © 2011-2022 走看看