Npoi 是什么?
1.整个Excel表格叫做工作表:WorkBook(工作薄),包含的叫页(工作表):Sheet;行:Row;单元格Cell。
2.Npoi 下载地址:http://npoi.codeplex.com/releases/view/38113
3.Npoi 学习系列教程推荐:http://www.cnblogs.com/tonyqus/archive/2009/04/12/1434209.html
4.忘了告诉大家npoi是做什么的了,npoi 能够读写几乎所有的Office 97-2003文件格式,至少能够支持Word, PowerPoint, Excel, Visio的格式。
使用Npoi创建一个简单的xls文件
//创建xls文件
private void button1_Click(object sender, EventArgs e)
{
//创建工作薄
HSSFWorkbook wk = new HSSFWorkbook();
//创建一个名称为mySheet的表
ISheet tb = wk.CreateSheet("mySheet");
//创建一行,此行为第二行
IRow row = tb.CreateRow(1);
for (int i = 0; i < 20; i++)
{
ICell cell = row.CreateCell(i); //在第二行中创建单元格
cell.SetCellValue(i);//循环往第二行的单元格中添加数据
}
using (FileStream fs = File.OpenWrite(@"c:/myxls.xls")) //打开一个xls文件,如果没有则自行创建,如果存在myxls.xls文件则在创建是不要打开该文件!
{
wk.Write(fs); //向打开的这个xls文件中写入mySheet表并保存。
MessageBox.Show("提示:创建成功!");
}
}
使用Npoi读取一个简单的xls文件
//读取xls文件 private void button2_Click(object sender, EventArgs e) { StringBuilder sbr = new StringBuilder(); using (FileStream fs = File.OpenRead(@"c:/myxls.xls")) //打开myxls.xls文件 { HSSFWorkbook wk = new HSSFWorkbook(fs); //把xls文件中的数据写入wk中 for (int i = 0; i < wk.NumberOfSheets; i++) //NumberOfSheets是myxls.xls中总共的表数 { ISheet sheet = wk.GetSheetAt(i); //读取当前表数据 for (int j = 0; j <= sheet.LastRowNum; j++) //LastRowNum 是当前表的总行数 { IRow row = sheet.GetRow(j); //读取当前行数据 if (row != null) { sbr.Append("-------------------------------------\r\n"); //读取行与行之间的提示界限 for (int k = 0; k <= row.LastCellNum; k++) //LastCellNum 是当前行的总列数 { ICell cell = row.GetCell(k); //当前表格 if (cell != null) { sbr.Append(cell.ToString()); //获取表格中的数据并转换为字符串类型 } } } } } } sbr.ToString(); using (StreamWriter wr = new StreamWriter(new FileStream(@"c:/myText.txt", FileMode.Append))) //把读取xls文件的数据写入myText.txt文件中 { wr.Write(sbr.ToString()); wr.Flush(); } }
本文导航
- 第1页: 首页
- 第2页: 创建常用的xls文件