前言,想利用C#将excel文件导入到winForm程序中来,通过各方面的尝试,终于找到一个比较简洁的方式,前来分享~
1.导入引用
2.导入命名空间
using NPOI.HSSF.UserModel;using NPOI.SS.UserModel;
3.主要代码
在这里,我将excel表中第一列的数据,全部导入到textBox控件上,如果是想导入datagridview控件或者别的控件上,即更改方法的类型就ok。
private void button1_Click(object sender, EventArgs e){ openFileDialog1.ShowDialog(); TextBox tb = ExcelInput(openFileDialog1.FileName); textBox1.Text = tb.Text.TrimStart(',').TrimEnd(',');}public static TextBox ExcelInput(string FilePath){ TextBox tb = new TextBox(); //根据路径通过已存在的excel来创建HSSFWorkbook,即整个excel文档 HSSFWorkbook workbook = new HSSFWorkbook(File.Open(FilePath, FileMode.Open)); //获取excel的第一个sheet HSSFSheet sheet =(HSSFSheet)workbook.GetSheetAt(0); //获取Excel的最大行数和列数 int rowsCount = sheet.PhysicalNumberOfRows; int colsCount = sheet.GetRow(0).PhysicalNumberOfCells; //第一行为标题行,即从第二行开始循环 for (int x = 1; x < rowsCount; x++) { //for (int y = 0; y < colsCount; y++) //输出的是所有列的数据 for (int y = 0; y < 1; y++) //在这里 只要第一列的数据 { tb.Text += sheet.GetRow(x).GetCell(y).ToString() + ','; } } sheet = null; workbook = null; return tb;}