当前位置: 首页 > news >正文

上海地区网站设计手机百度搜索引擎

上海地区网站设计,手机百度搜索引擎,黄页114企业号码查询,移动网站开发内容NPOI是一个开源的C#读写Excel、WORD等微软OLE2组件文档的项目。 NPOI可以在没有安装Office的情况下对Word或Excel文档进行读写操作。 相较于之前使用的Microsoft.Office.Interop.Excel,已经感觉到的优势,一是读写速度较快,虽然小数据量的读…

NPOI是一个开源的C#读写Excel、WORD等微软OLE2组件文档的项目。

NPOI可以在没有安装Office的情况下对Word或Excel文档进行读写操作。

相较于之前使用的Microsoft.Office.Interop.Excel,已经感觉到的优势,一是读写速度较快,虽然小数据量的读写还不是很明显,但数据量上去后还是有差别的。二是Microsoft.Office.Interop.Excel会使用Office软件进行打开Excel的操作,这不仅要求在电脑中安装对应的Office软件,而且如果在程序中断的情况下,后台会保留进程,对后续的读写产生影响(已经不只一次遇到这个问题!)。

因此果断放弃Microsoft.Office.Interop.Excel,准备用NPOI代替。

下面是汇总的NPOI简单操作。


1、获取工作薄IWorkbook
FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.ReadWrite);
IWorkbook workbook = new XSSFWorkbook(fs);
2、获取工作表对象ISheet
// 获取sheet,按序号,从0开始
ISheet sheet = workbook.GetSheetAt(0);
// 按名称获取
ISheet sheet = workbook.GetSheet("sheet1");
3、获取工作表的行(第一行)
IRow row = sheet.GetRow(0);
4、获取指定行的单元格
ICell cell = row.GetCell(0);
5、获取并设置单元格样式
// 获取单元格格式
ICellStyle style = cell.CellStyle;
// 设置格式
style.VerticalAlignment=HSSFCellStyle.VERTICAL_TOP  // 靠上
style.VerticalAlignment=HSSFCellStyle.VERTICAL_CENTER  // 居中
style.VerticalAlignment=HSSFCellStyle.VERTICAL_BOTTOM  // 靠下
style.VerticalAlignment=HSSFCellStyle.VERTICAL_JUSTIFY  // 两端对齐
// 自动换行
style.WrapText=true;
// 边框设置
style.BorderBottom=HSSFCellStyle.BORDER_THIN;
style.BorderLeft=HSSFCellStyle.BORDER_THIN;
style.BorderRight=HSSFCellStyle.BORDER_THIN;
style.BorderTop= HSSFCellStyle.BORDER_THIN ;
6、创建工作簿对象
XSSFWorkbook workBook= new XSSFWorkbook();
7、创建工作表对象
XSSFSheet newSheet = (XSSFSheet)workBook.CreateSheet("newSheet");
8、创建工作表的行
XSSFRow newRow = (XSSFRow)newSheet.CreateRow(0);
9、创建单元格
XSSFCell newCell = (XSSFCell)newRow.CreateCell(0);
10、单元格写值
newCell.SetCellValue(1);
11、设置Sheet名称
workBook.SetSheetName(0, "newSheet");
12、获取工作簿中Sheet数量
int count = workBook.NumberOfSheets;
13、保存excel文件
workBook.Write(new FileStream(outFilePath, FileMode.Create, FileAccess.ReadWrite));
14、强制更新计算公式
sheet.ForceFormulaRecalculation = true;
15、完整的写值操作
// 文件路径
string filePath = @"C:\Users\Administrator\Desktop\lab.xlsx";
// 创建文件流
FileStream fs = File.Open(filePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
// 打开工作簿
XSSFWorkbook wb = new XSSFWorkbook(fs);
// 获取第一个工作表
ISheet sheet = wb.GetSheet("new");
for (int i = 0; i < 100; i++)
{// 获取第3行(索引从0开始)IRow row = sheet.GetRow(i);for (int j = 0; j < 30; j++){// 获取第5列(索引从0开始)ICell cell = row.GetCell(j);// 设置单元格的值为"新"cell?.SetCellValue("fme");}
}
// 保存工作簿
using FileStream saveFile = new FileStream(filePath, FileMode.Create);
wb.Write(saveFile);
16、单元格合并
// 下面(2,3,4,5)指代的意思为从第3行第4列开始,至第5行第6列进行合并
// 即为“C4:E6”
sheet.AddMergedRegion(new Region(2, 3, 4, 5));
17、设置、获取行高列宽
// 获取当前工程中的所有Layouts
IEnumerable<LayoutProjectItem> layouts = Project.Current.GetItems<LayoutProjectItem>();
// 按名称获取
LayoutProjectItem layoutItem = Project.Current.GetItems<LayoutProjectItem>().FirstOrDefault(item => item.Name.Equals("MyLayout"));
18、获取sheet的行数,列数
// 行数
int rowNum = sheet.LastRowNum;
// 列数
int colNum = sheet.LastRowNum;
19、移动行
// 将第9行到第40行的内容向上移动2格
sheet.ShiftRows(8, 39, -2);
20、取消sheet中的所有合并格
// 获取所有合并区域
List<CellRangeAddress> mergeRanges = sheet.MergedRegions;
// 检查并清除合并区域
for (int i = mergeRanges.Count - 1; i >= 0; i--)
{// 合并格的四至CellRangeAddress region = mergeRanges[i];int firstRow = region.FirstRow;int lastRow = region.LastRow;int firstCol = region.FirstColumn;int lastCol = region.LastColumn;// 判定要处理的区域if (startRow <= firstRow && startCol <= firstCol){for (int row = firstRow; row <= lastRow; row++){for (int col = firstCol; col <= lastCol; col++){if (row != firstRow || col != firstCol){IRow r = sheet.GetRow(row);ICell c = r.GetCell(col);// 如果c是空值,则赋一个默认值c ??= r.CreateCell(col);// 设置拥有合并区域的单元格的值为合并区域的值ICell mergedCell = sheet.GetRow(firstRow).GetCell(firstCol);if (mergedCell != null){c.SetCellValue(mergedCell.StringCellValue); // 可根据需要选择相应的数据类型}}}}// 清除合并区域sheet.RemoveMergedRegion(i);}
}
http://www.hkea.cn/news/876188/

相关文章:

  • 好的网站建设公司营销推广外包公司
  • 教育机构做网站素材长尾关键词爱站
  • 做网站选什么系统企业网站seo推广
  • 山东省南水北调建设管理局网站腾讯网qq网站
  • 菏泽做网站公司sem网络营销
  • 专业建站外包兰州网络优化seo
  • 企业邮箱腾讯杭州seo按天计费
  • 政府网站建设先进个人事迹互动营销
  • 网站建设之织梦模板做国外网站
  • 小程序电商模板seo关键词排名优化品牌
  • 泉州网站优化排名百度关键字优化价格
  • 上海网站建设好处win优化大师官网
  • 适合毕设做的简单网站初学seo网站推广需要怎么做
  • 想把书放到二手网站如何做深圳seo关键词优化
  • 合肥网站优化排名推广合理使用说明
  • 如何网站专题策划互联网推广是什么
  • 用hadoop做网站日志分析推广工作的流程及内容
  • 凡科做网站技巧站长之家域名信息查询
  • 网站建设国际深圳网络营销课程ppt
  • 网站开发人员需要具备的能力电脑培训班多少费用
  • discuz集成wordpressseo的概念是什么
  • 子网站如何做网站营销方案模板
  • dreamweaver做的网站电商培训班一般多少钱
  • 国外做科研的网站东莞网站设计公司排名
  • 亿唐网不做网站做品牌原因seo网站诊断报告
  • 宝鸡网站建设东东怎么推广软件让别人下载
  • 21dove谁做的的网站百度一下首页设为主页
  • 猪八戒网站建设推广平台排名前十名
  • 广西建设质监站官方网站站长工具seo综合查询可以访问
  • 通用搭建网站教程优化营商环境的意义