C#使用NPOI初步读写EXCEL表格小经验
NPOI操作excel表格实在方便,原来并没有尝试过这样的操作,今天工作需要,就学习了一些皮毛,初步地读写和使用,相信还是够的。
首先,必不可少的就是引用,把npoi引用到工程中


这是我的引用NPOI的部分。
想要操作一个excel文件,首先我们必须要做的就是获取它的文件路径。
我是使用控件,打开选择文件的界面去寻找文件,并输出文件的绝对路径。代码如下
/**********************************************************************************************************/
private void browsebutton_Click(object sender, EventArgs e)
{
OpenFileDialog dialog = new OpenFileDialog();
dialog.Filter = "xls文件|*.xls";
if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
textBox_src.Text = dialog.FileName;
}
}
其中textbox_src是我的文本框控件,将获得的文件路径填入。
/**********************************************************************************************************/
有了文件路径,我们就可以打开它
/**********************************************************************************************************/
FileStream fs = null;
IWorkbook workbook = null;
ISheet sheet = null;
IRow row = null;
ICell cell = null;
using (fs = File.OpenRead(textBox_src.Text.Trim().ToString()))
{
// 2007版本
if (textBox_src.Text.IndexOf(".xlsx") > 0)
workbook = new XSSFWorkbook(fs);
// 2003版本
else if (textBox_src.Text.IndexOf(".xls") > 0)
workbook = new HSSFWorkbook(fs);
}
/**********************************************************************************************************/
有了以上的铺垫之后,我们就可以开始读取excel表格里面的数据
/**********************************************************************************************************/
sheet = workbook.GetSheetAt(0); //表示目前正在查看表格第一页
int rowCount = sheet.LastRowNum;//获取当前页的总行数
row = sheet.GetRow(i); //聚焦在第0页的第i行
cell = row.GetCell(j); //聚焦在第0页的第i行的第j列
/**********************************************************************************************************/
有了以上的四行代码之后,我们就可以任意地聚焦在excel表格中的某个格子上,并读取其中的数据,而把数据读成成什么类型,就看我们的需要了,我这里是
读成string类型
string a = cell.StringCellValue;
(人生中第一次写,纪念一下!)
浙公网安备 33010602011771号