可以通过将datatable中的数据导出为Excel文件,然后保存excel文件到本地。不知道你的具体需求是什么,这种方法仅供参考,代码如下:
//创建一个workbook对象,默认创建03版的Excel
Workbook workbook = new Workbook()
//指定版本信息,07及以上版本最多可以插入1048576行册灶数据
workbook.Version = ExcelVersion.Version2013
//获取第一张sheet
Worksheet sheet = workbook.Worksheets[0]
//得到在datatable里的数据
DataTable dt = GetDataTable()
//从第一行第一列开哗碰始插入数据,true代表数据包含列名
sheet.InsertDataTable(dt, true, 1, 1)
//保存文件
workbook.SaveToFile("ExportDataToExcel.xlsx",ExcelVersion.Version2013)
程序要引入spire.xls.dll,同时需要州芦扮在vs程序中添加相应的using指令。
下面的函数作用,将DataTable导出到EXCEL文件:private void DataTabletoExcel(System.Data.DataTable tmpDataTable,string strFileName)
{
if (tmpDataTable == null)
{
return
}
int rowNum = tmpDataTable.Rows.Count
int columnNum = tmpDataTable.Columns.Count
int rowIndex = 1
int columnIndex = 0
Excel.Application xlApp = new Excel.ApplicationClass()
xlApp.DefaultFilePath = ""
xlApp.DisplayAlerts = true
xlApp.SheetsInNewWorkbook = 1
Excel.Workbook xlBook = xlApp.Workbooks.Add(true)
/圆饥册/将DataTable的列名肢纳导入Excel表第橘宏一行
foreach(DataColumn dc in tmpDataTable.Columns)
{
columnIndex ++
xlApp.Cells[rowIndex,columnIndex] = dc.ColumnName
}
//将DataTable中的数据导入Excel中
for(int i = 0i<rowNumi++)
{
rowIndex ++
columnIndex = 0
for (int j = 0j<columnNumj++)
{
columnIndex ++
xlApp.Cells[rowIndex,columnIndex] = tmpDataTable.Rows[i][j].ToString()
}
}
xlBook.SaveCopyAs(strFileName + ".xls")
}
需导入命名空间 System.Data//使用手工DataTable 表填充 DataSet数据集
public static DataSet SelectDataSet()
{
DataSet ds = new DataSet()//创建数据集
DataTable dt = new DataTable("wc")//创建dt对象wc表
//创建表的一吵旅个列
DataColumn name = new DataColumn()
name.ColumnName = "姓名"//列名
name.DataType = System.Type.GetType("System.String")//数据类型
name.MaxLength = 50//长度
//创建一个列,参数设置列名,数据类型
DataColumn love = new DataColumn("爱好",typeof(string))
love.MaxLength = 50
dt.Columns.Add(name)//对象dt表中加入燃晌列
dt.Columns.Add(love)//把列放入表dt中
dt.Columns.Add("张刷")//dt表中加入列
DataRow drFirst = dt.NewRow()//使用表对象皮碰锋dt创建一行
drFirst["姓名"] = "张帅"//设置行姓名列的值
drFirst["爱好"] = "上网"//设置行爱好列的值
drFirst[2] = "好"//下标确定列赋值
dt.Rows.Add(drFirst)//表对象dt添加行
ds.Tables.Add(dt2)//数据集中添加表dt2
ds.Tables.Add(dt)//数据集中添加表dt
return ds//返回数据集
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)