本文介绍了在Winform中使用NPOI(PIO项目下的.Net组件)来操作Excel文件,而无需安装Office。
要实现的效果是这样的:
1、导出Excel:根据指定datatable,弹出导出窗口,用户自定义路径、导出名,然后导出。
2、导入Excel:弹出导入窗口,用户自定义导入Excel文件,导入到datatable中。
首先,需要在NuGet程序包中搜索并下载NPOI组件,如下图所示:
再添加一个ExcelHelper操作类,网上很多例子,我简化了很多样式相关的代码,只留下主要功能,并且自测没问题,附上ExcelHelper操作类:
public class ExcelHelp
{
/// <summary>
///将datatable流文件导出到指定路径的Excel中
/// </summary>
/// <param name="sourceTable"></param>
public virtual void DataTableExportExcel(DataTable sourceTable)
{
MemoryStream ms = DataTableToExcel(sourceTable);
string saveFileName = "";
bool fileSaved = false;
SaveFileDialog saveDialog = new SaveFileDialog();//打开选择保存窗口
saveDialog.DefaultExt = "xls";
saveDialog.Filter = "Excel文件|*.xls";//保存窗口的文件筛选
saveDialog.FileName = "MyExcel";//默认文件名称
saveDialog.ShowDialog();
saveFileName = saveDialog.FileName;
if (saveFileName.IndexOf(":") &l