C# 구현된 Excel 파일 작업 클래스 인스턴스

3419 단어
이 문서에서는 C# 구현된 Excel 파일 작업 클래스를 보여 줍니다.다음과 같이 여러분에게 참고할 수 있도록 공유합니다.

using System;
using System.Data;
using System.Data.OleDb;
using System.Text;
using System.IO;
namespace Hxh.API
{
 /// 
 /// ExcelOpration  。
 /// 
 public class ExcelOpration
 {
 OleDbConnection Conn;
 string connString ;
 string FileName;
 public ExcelOpration()
 {
  //
  // TODO:  
  //
 }
 public ExcelOpration(string _FileName)
 {
  //
  // TODO:  
  //
  FileName = _FileName;
 }
 /// 
 ///  
 /// 
 private void Open()
 {
  if(Conn==null)
  {
  // 
  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();
 }
 /// 
 ///  
 /// 
 public void Close()
 {
  if (Conn != null)
  Conn.Close();
 }
 /// 
 ///  Excel
 /// 
 /// 
 public void ImportData(DataTable OutTable)
 {
  CreateExcel(OutTable);
  InsertData(OutTable);
 }
 /// 
 ///  Excel 
 /// 
 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();
 }
 /// 
 ///  
 /// 
 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
 ///  Excel 
 /// 
 /// 
 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#프로그래밍의 루틴 사용 기교 총결, C#흔한 컨트롤 용법 튜토리얼, WinForm 컨트롤 용법 총결, C#데이터 구조와 알고리즘 튜토리얼, C#수조 조작 기교 총결 및 C#대상방향 프로그래밍 입문 튜토리얼
본 논문이 여러분의 C#프로그래밍에 도움이 되기를 바랍니다.

좋은 웹페이지 즐겨찾기