C#实现的Excel文件操作类实例
本文实例讲述了C#实现的Excel文件操作类。分享给大家供大家参考,具体如下:
usingSystem;
usingSystem.Data;
usingSystem.Data.OleDb;
usingSystem.Text;
usingSystem.IO;
namespaceHxh.API
{
///
///ExcelOpration的摘要说明。
///
publicclassExcelOpration
{
OleDbConnectionConn;
stringconnString;
stringFileName;
publicExcelOpration()
{
//
//TODO:在此处添加构造函数逻辑
//
}
publicExcelOpration(string_FileName)
{
//
//TODO:在此处添加构造函数逻辑
//
FileName=_FileName;
}
///
///打开连接
///
privatevoidOpen()
{
if(Conn==null)
{
//在此处设置访问的数据库文件
connString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+FileName+";ExtendedProperties=Excel8.0;";
Conn=newOleDbConnection(connString);
Conn.Open();
}
elseif(Conn.State==System.Data.ConnectionState.Closed)
Conn.Open();
}
///
///关闭连接
///
publicvoidClose()
{
if(Conn!=null)
Conn.Close();
}
///
///导入数据到Excel
///
///
publicvoidImportData(DataTableOutTable)
{
CreateExcel(OutTable);
InsertData(OutTable);
}
///
///创建Excel文件和表头
///
privatevoidCreateExcel(DataTableOutTable)
{
StringBuildersb=newStringBuilder();
if(File.Exists(FileName))
{
File.Delete(FileName);
}
sb.Append("createtableSheet1(");
foreach(DataColumncolinOutTable.Columns)
{
sb.Append(col.ColumnName+"varchar,");
}
sb.Remove(sb.Length-1,1);
sb.Append(")");
Open();
OleDbCommandOleCmd=newOleDbCommand();
OleCmd.Connection=Conn;
OleCmd.CommandText=sb.ToString();
OleCmd.ExecuteNonQuery();
Close();
}
///
///插入数据
///
privatevoidInsertData(DataTableOutTable)
{
OleDbCommandOleCmd=newOleDbCommand();
OleDbParameter[]parm=newOleDbParameter[OutTable.Columns.Count];
StringBuildersb=newStringBuilder();
sb.Append("insertintoSheet1values(");
for(inti=0;i
///从Excel输出数据到数据集
///
///
publicDataSetOutPortData()
{
DataSetds=newDataSet();
Open();
OleDbDataAdaptermyAdapter=newOleDbDataAdapter("select*from[Sheet1$]",Conn);
myAdapter.Fill(ds,"Input");
Close();
returnds;
}
}
}
更多关于C#相关内容感兴趣的读者可查看本站专题:《C#操作Excel技巧总结》、《C#程序设计之线程使用技巧总结》、《C#常见控件用法教程》、《WinForm控件用法总结》、《C#数据结构与算法教程》、《C#数组操作技巧总结》及《C#面向对象程序设计入门教程》
希望本文所述对大家C#程序设计有所帮助。