C#数据导入到EXCEL的方法
程序员文章站
2023-12-12 09:26:52
c#做公司的应用级开发时,导出数据这个是经常要做的,公司使用的是一个叫npoi的组件。具体是什么我就不很清楚,反正这样用就是了。
具体的dll是一个叫:npoi.hssf...
c#做公司的应用级开发时,导出数据这个是经常要做的,公司使用的是一个叫npoi的组件。具体是什么我就不很清楚,反正这样用就是了。
具体的dll是一个叫:npoi.hssf.dll,引入这个dll,这个dll提供hssfworkbook类 hssfsheet类hssfrow类;
具体实现方式直接看代码吧:
public static stream datasettoexcel(dataset _sourcedt,string _sheetname) { hssfworkbook workbook = new hssfworkbook(); memorystream ms = new memorystream(); string [] sheetnames= _sheetname.split(','); for(int i = 0; i <sheetnames.length;i++) { hssfsheet sheet = workbook.cretesheet(sheetnames[i]); hssfrow headrow = sheet.createrow(0); foreach(datacolumn column in _sourcedt.table[i].cloumns) headrow.createcell(column.ordinal).setcellvalue(column.column.name); int rowindex =1; foreach(datarow row in _sourcedt.tables[i].rows) { hssfrow datarow = sheet.createrow(rowindex); foreach(datacolumn column in _sourcedt.tables[i].columns) { datarow.createcell(column.ordinal).setcellvalue(row[column].tostring()); } rowindex++; } } workbook.write(ms); ms.flush(); ms.position = 0; workbook = null; return ms; }
主要是要构建一个数据来源的dataset ;还是直接上代码吧:
datatable dt = new datatable(); dataset datatemp = new dataset(); dt.columns.add("列名1",string); dt.columns.add("列名2",string ); for(int i = 0;i<3;i++) { datarow dr = dt.newrow(); dr["列名1"] = "data1"; dr["列名2"] = "data1"; dt.rows.add(dr); } datatemp.tables.add(dt);
data1和data2就是你要导出的数据了。
以上不是开发的源代码,只是方法。仅供参考;
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。如果你想了解更多相关内容请查看下面相关链接