zoukankan      html  css  js  c++  java
  • Import / export data in MS Excel using C#

    Sometimes we may require to generate Excel file from our reports,read from excel files to import data etc. This can be achieved using Office Interop (Office Automation) assemblies, but Office Automation in Web servers,got some issues;(More details: http://support.microsoft.com/kb/257757). The alternative is using OleDb provider. You may need to add one more attribute to connection string to connect to the Excel file. And connection string will be

    string connectionString = "Provider=Microsoft.Jet.OleDb.4.0; Data Source=C:\Sample.xls; Extended Properties=Excel 8.0;"

    Please note the “Extended Properties” attribute. This attribute helps us to query the excel file.

    Exporting Data from Data Table to Excel File.

    string connectionString = "Provider=Microsoft.Jet.OleDb.4.0; Data Source=C:\Sample.xls; Extended Properties=Excel 8.0;"
    // Establish a connection to the data source.
    using(OleDbConnection Connection = new OleDbConnection(connectionString))
    {
    Connection.Open()
    //creating a new Sheet with name sample and three columns with Heading firstname, lastname and email
    using(OleDbCommand command = new OleDbCommand())
    {
    command.Connection = Connection;
    command.CommandText = "CREATE TABLE [Sample$](FirstName Char(255), LastName char(255), Email char(255))";
    command.ExecuteNonQuery();
    }
    //Adding records to the Sample Worksheet
    using(OleDbCommand command = new OleDbCommand())
    {
    command.Connection = Connection;
    command.CommandText = "INSERT INTO TABLE [Sample$](FirstName,LastName,Email) VALUES('Anuraj','P','anuraj.p@example.com')";
    command.ExecuteNonQuery();
    command.CommandText = "INSERT INTO TABLE [Sample$](FirstName,LastName,Email) VALUES('sreekumar','vn','sreekumar.vn@example.com')";
    command.ExecuteNonQuery();
    }
    }

    Import the Data from Excel

    DataTable dt;
    string connectionString = "Provider=Microsoft.Jet.OleDb.4.0; Data Source=C:\Sample.xls; Extended Properties=Excel 8.0;"
    // Establish a connection to the data source.
    using(OleDbConnection Connection = new OleDbConnection(connectionString))
    {
    Connection.Open()
    //reading data from excel to Data Table
    using(OleDbCommand command = new OleDbCommand())
    {
    command.Connection = Connection;
    command.CommandText = "SELECT * FROM [Sample]";
    using(OleDbDataAdapter adapter =new OleDbDataAdapter())
    {
    adapter.SelectCommand = command;
    adapter.Fill(dt);
    }
    }
    }
  • 相关阅读:
    HDU_1068_Girls and Boys_二分图匹配
    Bringing Native Performance to Electron
    BIM开发引挈
    旷视科技 -- Face++ 世界最大的人脸识别技术平台
    freedownloadmanager 下载工具,代替 讯雷
    两种 AuthorizationSchemes 在 ASP.NET Core 2
    layout 的应用
    递归获取一个树层次结构(合同清单)的部分选择项(计量合同清单),以及递归删除部分清单
    Nest + typeorm
    http://nancyfx.org + ASPNETCORE
  • 原文地址:https://www.cnblogs.com/JoshuaDreaming/p/1797947.html
Copyright © 2011-2022 走看看