• C# 将Excel作为数据源处理


    前些日子,有很多朋友说需要C#导出到Excel的代码,现共享给大家

    /// <summary>
      /// 读取Excel文档
      /// </summary>
      /// <param name="Path">文件名称</param>
      /// <returns>返回一个数据集</returns>
      public DataSet ExcelToDS(string Path)
      {
       string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +"Data Source="+ Path +";"+"Extended Properties=Excel 8.0;";
       OleDbConnection conn = new OleDbConnection(strConn);
       conn.Open(); 
       string strExcel = "";  
       OleDbDataAdapter myCommand = null;
       DataSet ds = null;
       strExcel="select * from [sheet1$]";
       myCommand = new OleDbDataAdapter(strExcel, strConn);
       ds = new DataSet();
       myCommand.Fill(ds,"table1");  
       return ds;
      }

    /// <summary>
      /// 写入Excel文档
      /// </summary>
      /// <param name="Path">文件名称</param>
      public bool SaveFP2toExcel(string Path)
      {
       try
       {
        string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +"Data Source="+ Path +";"+"Extended Properties=Excel 8.0;";
        OleDbConnection conn = new OleDbConnection(strConn);
        conn.Open(); 
        System.Data.OleDb.OleDbCommand cmd=new OleDbCommand ();
        cmd.Connection =conn;
        //cmd.CommandText ="UPDATE [sheet1$] SET 姓名='2005-01-01' WHERE 工号='日期'";
        //cmd.ExecuteNonQuery ();
        for(int i=0;i<fp2.Sheets [0].RowCount -1;i++)
        {
         if(fp2.Sheets [0].Cells[i,0].Text!="")
         {
          cmd.CommandText ="INSERT INTO [sheet1$] (工号,姓名,部门,职务,日期,时间) VALUES('"+fp2.Sheets [0].Cells[i,0].Text+ "','"+
           fp2.Sheets [0].Cells[i,1].Text+"','"+fp2.Sheets [0].Cells[i,2].Text+"','"+fp2.Sheets [0].Cells[i,3].Text+
           "','"+fp2.Sheets [0].Cells[i,4].Text+"','"+fp2.Sheets [0].Cells[i,5].Text+"')";
          cmd.ExecuteNonQuery ();
         }
        }
        conn.Close ();
        return true;
       }
       catch(System.Data.OleDb.OleDbException ex)
       {
        System.Diagnostics.Debug.WriteLine ("写入Excel发生错误:"+ex.Message );
       }
       return false;
      }

  • 相关阅读:
    Cx的治疗
    [HDU2222] Keywords Search
    楼房
    [51Nod1089] 最长回文子串 V2(Manacher算法)
    [洛谷P3375] 【模板】KMP字符串匹配
    [codeVS1204] 寻找子串位置
    [洛谷P1114] “非常男女”计划
    [BZOJ2132] 圈地计划
    [COGS311] Redundant Paths
    [COGS309] [USACO 3.2] 香甜的黄油
  • 原文地址:https://www.cnblogs.com/benzhang/p/1940939.html
Copyright © 2020-2023  润新知