C#如何實現(xiàn)的Excel文件操作類

這篇文章給大家分享的是有關(guān)C#如何實現(xiàn)的Excel文件操作類的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

成都創(chuàng)新互聯(lián)公司是一家專注于成都做網(wǎng)站、成都網(wǎng)站設(shè)計與策劃設(shè)計,富縣網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:富縣等地區(qū)。富縣做網(wǎng)站價格咨詢:18980820575

具體如下:

using System;
using System.Data;
using System.Data.OleDb;
using System.Text;
using System.IO;
namespace Hxh.API
{
 /// <summary>
 /// ExcelOpration 的摘要說明。
 /// </summary>
 public class ExcelOpration
 {
 OleDbConnection Conn;
 string connString ;
 string FileName;
 public ExcelOpration()
 {
  //
  // TODO: 在此處添加構(gòu)造函數(shù)邏輯
  //
 }
 public ExcelOpration(string _FileName)
 {
  //
  // TODO: 在此處添加構(gòu)造函數(shù)邏輯
  //
  FileName = _FileName;
 }
 /// <summary>
 /// 打開連接
 /// </summary>
 private void Open()
 {
  if(Conn==null)
  {
  //在此處設(shè)置訪問的數(shù)據(jù)庫文件
  connString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FileName +";Extended Properties=Excel 8.0;";
  Conn=new OleDbConnection(connString);
  Conn.Open();
  }
  else if(Conn.State==System.Data.ConnectionState.Closed)
  Conn.Open();
 }
 /// <summary>
 /// 關(guān)閉連接
 /// </summary>
 public void Close()
 {
  if (Conn != null)
  Conn.Close();
 }
 /// <summary>
 /// 導(dǎo)入數(shù)據(jù)到Excel
 /// </summary>
 /// <param name="OutTable"></param>
 public void ImportData(DataTable OutTable)
 {
  CreateExcel(OutTable);
  InsertData(OutTable);
 }
 /// <summary>
 /// 創(chuàng)建Excel文件和表頭
 /// </summary>
 private void CreateExcel(DataTable OutTable)
 {
  StringBuilder sb = new StringBuilder();
  if(File.Exists(FileName))
  {
  File.Delete(FileName);
  }
  sb.Append("create table Sheet1(");
  foreach(DataColumn col in OutTable.Columns)
  {
  sb.Append(col.ColumnName+" varchar,");
  }
  sb.Remove(sb.Length-1,1);
  sb.Append(")");
  Open();
  OleDbCommand OleCmd = new OleDbCommand();
  OleCmd.Connection = Conn;
  OleCmd.CommandText = sb.ToString();
  OleCmd.ExecuteNonQuery();
  Close();
 }
 /// <summary>
 /// 插入數(shù)據(jù)
 /// </summary>
 private void InsertData(DataTable OutTable)
 {
  OleDbCommand OleCmd = new OleDbCommand();
  OleDbParameter[] parm=new OleDbParameter[OutTable.Columns.Count];
  StringBuilder sb = new StringBuilder();
  sb.Append("insert into Sheet1 values(");
  for(int i=0;i<OutTable.Columns.Count;i++)
  {
  parm=new OleDbParameter("@P"+OutTable.Columns.ColumnName,OleDbType.VarChar);
  sb.Append("@P"+OutTable.Columns.ColumnName+",");
  OleCmd.Parameters.Add(parm);
  }
  sb.Remove(sb.Length-1,1);
  sb.Append(")");
  Open();
  OleCmd.Connection = Conn;
  OleCmd.CommandText = sb.ToString();
  foreach(DataRow row in OutTable.Rows)
  {
  for(int i=0;i<OutTable.Columns.Count;i++)
  {
   parm.Value = row[OutTable.Columns.ColumnName].ToString().Trim();
  }
  OleCmd.ExecuteNonQuery();
  }
  Close();
 }
 /// <summary>
 /// 從Excel輸出數(shù)據(jù)到數(shù)據(jù)集
 /// </summary>
 /// <returns></returns>
 public DataSet OutPortData()
 {
  DataSet ds = new DataSet();
  Open();
  OleDbDataAdapter myAdapter = new OleDbDataAdapter("select * from [Sheet1$]", Conn);
  myAdapter.Fill(ds,"Input");
  Close();
  return ds;
 }
 }
}

C#是什么

C#是一個簡單、通用、面向?qū)ο蟮木幊陶Z言,它由微軟Microsoft開發(fā),繼承了C和C++強大功能,并且去掉了一些它們的復(fù)雜特性,C#綜合了VB簡單的可視化操作和C++的高運行效率,以其強大的操作能力、優(yōu)雅的語法風(fēng)格、創(chuàng)新的語言特性和便捷的面向組件編程從而成為.NET開發(fā)的首選語言,但它不適用于編寫時間急迫或性能非常高的代碼,因為C#缺乏性能極高的應(yīng)用程序所需要的關(guān)鍵功能。

感謝各位的閱讀!關(guān)于“C#如何實現(xiàn)的Excel文件操作類”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

本文題目:C#如何實現(xiàn)的Excel文件操作類
分享地址:http://muchs.cn/article8/ghsgop.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、搜索引擎優(yōu)化、軟件開發(fā)、手機網(wǎng)站建設(shè)、微信公眾號、品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司