最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C# 通過 oledb 操作Excel實例代碼

 更新時間:2017年06月02日 08:54:13   作者:李子康  
本篇文章主要介紹了C# 通過 oledb 操作Excel實例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

整理文檔,搜刮出一個C# 通過 oledb 操作Excel實例代碼,稍微整理精簡一下做下分享。

public string GetConnectionString()
    {
      Dictionary<string, string> props = new Dictionary<string, string>();
 
      // XLSX - Excel 2007, 2010, 2012, 2013
      props["Provider"] = "Microsoft.ACE.OLEDB.12.0;";
      props["Extended Properties"] = "Excel 12.0 XML";
      props["Data Source"] = @"C:\tools\MyExcel.xlsx";
 
      // XLS - Excel 2003 and Older
      //props["Provider"] = "Microsoft.Jet.OLEDB.4.0";
      //props["Extended Properties"] = "Excel 8.0";
      //props["Data Source"] = "C:\\MyExcel.xls";
 
      var sb = new StringBuilder();
 
      foreach (KeyValuePair<string, string> prop in props)
      {
        sb.Append(prop.Key);
        sb.Append('=');
        sb.Append(prop.Value);
        sb.Append(';');
      }
 
      return sb.ToString();
    }
 
    public void WriteExcelFile()
    {
      string connectionString = GetConnectionString();
 
      using (OleDbConnection conn = new OleDbConnection(connectionString))
      {
        conn.Open();
        OleDbCommand cmd = new OleDbCommand();
        cmd.Connection = conn;
 
        cmd.CommandText = "CREATE TABLE [table1] (id INT, name VARCHAR, datecol DATE );";
        cmd.ExecuteNonQuery();
 
        cmd.CommandText = "INSERT INTO [table1](id,name,datecol) VALUES(1,'AAAA','2014-01-01');";
        cmd.ExecuteNonQuery();
 
        cmd.CommandText = "INSERT INTO [table1](id,name,datecol) VALUES(2, 'BBBB','2014-01-03');";
        cmd.ExecuteNonQuery();
 
        cmd.CommandText = "INSERT INTO [table1](id,name,datecol) VALUES(3, 'CCCC','2014-01-03');";
        cmd.ExecuteNonQuery();
 
        cmd.CommandText = "UPDATE [table1] SET name = 'DDDD' WHERE id = 3;";
        cmd.ExecuteNonQuery();
 
        conn.Close();
      }
    }
 
    public DataSet ReadExcelFile()
    {
      DataSet ds = new DataSet();
 
      string connectionString = GetConnectionString();
 
      using (OleDbConnection conn = new OleDbConnection(connectionString))
      {
        conn.Open();
        OleDbCommand cmd = new OleDbCommand();
        cmd.Connection = conn;
 
        // Get all Sheets in Excel File
        DataTable dtSheet = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
 
        // Loop through all Sheets to get data
        foreach (DataRow dr in dtSheet.Rows)
        {
          string sheetName = dr["TABLE_NAME"].ToString();
 
          if (!sheetName.EndsWith("$"))
            continue;
 
          // Get all rows from the Sheet
          cmd.CommandText = "SELECT * FROM [" + sheetName + "]";
 
          DataTable dt = new DataTable();
          dt.TableName = sheetName;
 
          OleDbDataAdapter da = new OleDbDataAdapter(cmd);
          da.Fill(dt);
 
          ds.Tables.Add(dt);
        }
 
        cmd = null;
        conn.Close();
      }
 
      return ds;
    }

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 一文帶你深入了解C#中的特殊字符

    一文帶你深入了解C#中的特殊字符

    特殊字符是預(yù)定義的上下文字符,用于修飾最前面插入了此類字符的程序元素,C#支持以下特殊字符:@和$,本文將通過代碼示例帶大家深入了解C#中的特殊字符,感興趣的小伙伴跟著小編一起來看看吧
    2024-01-01
  • C#實現(xiàn)TCP客戶端和服務(wù)器的基本功能

    C#實現(xiàn)TCP客戶端和服務(wù)器的基本功能

    本文將介紹如何使用C#實現(xiàn)TCP客戶端和服務(wù)器的基本功能,客戶端與服務(wù)器可以相互發(fā)送消息,文章通過代碼講解的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-12-12
  • C#使用windows服務(wù)發(fā)送郵件

    C#使用windows服務(wù)發(fā)送郵件

    這篇文章主要為大家詳細(xì)介紹了C#使用windows服務(wù)發(fā)送郵件的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • C#實現(xiàn)獲取文件大小并進(jìn)行比較

    C#實現(xiàn)獲取文件大小并進(jìn)行比較

    這篇文章主要為大家詳細(xì)介紹了C#如何實現(xiàn)獲取文件大小進(jìn)行單位轉(zhuǎn)換與文件大小比較功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2023-03-03
  • C#凈化版WebApi框架的實現(xiàn)

    C#凈化版WebApi框架的實現(xiàn)

    這篇文章主要介紹了C#凈化版WebApi框架的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-03-03
  • C#中控件動態(tài)添加事件綁定的時機(jī)詳解

    C#中控件動態(tài)添加事件綁定的時機(jī)詳解

    這篇文章主要給大家介紹了在C#中為控件動態(tài)添加事件綁定的時機(jī)的相關(guān)資料,文中介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。
    2017-06-06
  • 在Winform動態(tài)啟動、控制臺命令行的方法

    在Winform動態(tài)啟動、控制臺命令行的方法

    winForm 程序輸出類型為 windows 程序(不是命令行程序)在運(yùn)行時想輸入一些信息編譯開發(fā)調(diào)試,如何實現(xiàn)這一功能
    2013-02-02
  • Unity之跑馬燈抽獎效果單抽與連抽(附demo)

    Unity之跑馬燈抽獎效果單抽與連抽(附demo)

    這篇文章主要介紹了Unity之跑馬燈抽獎效果單抽與連抽,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • .NET中的靜態(tài)與非靜態(tài)的區(qū)別分析

    .NET中的靜態(tài)與非靜態(tài)的區(qū)別分析

    .NET中的靜態(tài)與非靜態(tài)的區(qū)別分析,需要的朋友可以參考一下
    2013-03-03
  • C#窗體間常用的幾種傳值方式及委托與事件詳解

    C#窗體間常用的幾種傳值方式及委托與事件詳解

    這篇文章主要給大家介紹了關(guān)于C#窗體間常用的幾種傳值方式及委托與事件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用小程序具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06

最新評論

乌兰浩特市| 泰来县| 无锡市| 衡水市| 筠连县| 凤山市| 淮安市| 游戏| 大连市| 武威市| 莱西市| 新巴尔虎左旗| 合山市| 习水县| 曲沃县| 行唐县| 辽宁省| 辉南县| 石家庄市| 翁牛特旗| 永和县| 五峰| 海安县| 新巴尔虎右旗| 安吉县| 垦利县| 奉化市| 滨海县| 桓仁| 衡南县| 安溪县| 临沧市| 杭锦旗| 宜良县| 柳河县| 和政县| 岳阳县| 英吉沙县| 南溪县| 青海省| 昌图县|