1. #region 从Excel导入
  2. /// <summary>
  3. /// 读取excel ,默认第一行为标头
  4. /// </summary>
  5. /// <param name="strFileName">excel文档路径</param>
  6. /// <returns></returns>
  7. public static DataTable ExcelImport(string strFileName)
  8. {
  9. DataTable dt = new DataTable();
  10.  
  11. ISheet sheet = null;
  12. using (FileStream file = new FileStream(strFileName, FileMode.Open, FileAccess.Read))
  13. {
  14. if (strFileName.IndexOf(".xlsx") == -)//
  15. {
  16. HSSFWorkbook hssfworkbook = new HSSFWorkbook(file);
  17. sheet = hssfworkbook.GetSheetAt();
  18. }
  19. else//
  20. {
  21. XSSFWorkbook xssfworkbook = new XSSFWorkbook(file);
  22. sheet = xssfworkbook.GetSheetAt();
  23. }
  24. }
  25.  
  26. System.Collections.IEnumerator rows = sheet.GetRowEnumerator();
  27.  
  28. IRow headerRow = sheet.GetRow();
  29. int cellCount = headerRow.LastCellNum;
  30.  
  31. for (int j = ; j < cellCount; j++)
  32. {
  33. ICell cell = headerRow.GetCell(j);
  34. dt.Columns.Add(cell.ToString());
  35. }
  36.  
  37. for (int i = (sheet.FirstRowNum + ); i <= sheet.LastRowNum; i++)
  38. {
  39. IRow row = sheet.GetRow(i);
  40. DataRow dataRow = dt.NewRow();
  41.  
  42. for (int j = row.FirstCellNum; j < cellCount; j++)
  43. {
  44. if (row.GetCell(j) != null)
  45. dataRow[j] = row.GetCell(j).ToString();
  46. }
  47.  
  48. dt.Rows.Add(dataRow);
  49. }
  50. return dt;
  51. }
  52. #endregion
  53.  
  1. #region RGB颜色转NPOI颜色
  2. private static short GetXLColour(HSSFWorkbook workbook, Color SystemColour)
  3. {
  4. short s = ;
  5. HSSFPalette XlPalette = workbook.GetCustomPalette();
  6. NPOI.HSSF.Util.HSSFColor XlColour = XlPalette.FindColor(SystemColour.R, SystemColour.G, SystemColour.B);
  7. if (XlColour == null)
  8. {
  9. if (NPOI.HSSF.Record.PaletteRecord.STANDARD_PALETTE_SIZE < )
  10. {
  11. XlColour = XlPalette.FindSimilarColor(SystemColour.R, SystemColour.G, SystemColour.B);
  12. s = XlColour.Indexed;
  13. }
  14.  
  15. }
  16. else
  17. s = XlColour.Indexed;
  18. return s;
  19. }
  20. #endregion
  21.  
  22. #region 设置列的对齐方式
  23. /// <summary>
  24. /// 设置对齐方式
  25. /// </summary>
  26. /// <param name="style"></param>
  27. /// <returns></returns>
  28. private static HorizontalAlignment getAlignment(string style)
  29. {
  30. switch (style)
  31. {
  32. case "center":
  33. return HorizontalAlignment.Center;
  34. case "left":
  35. return HorizontalAlignment.Left;
  36. case "right":
  37. return HorizontalAlignment.Right;
  38. case "fill":
  39. return HorizontalAlignment.Fill;
  40. case "justify":
  41. return HorizontalAlignment.Justify;
  42. case "centerselection":
  43. return HorizontalAlignment.CenterSelection;
  44. case "distributed":
  45. return HorizontalAlignment.Distributed;
  46. }
  47. return NPOI.SS.UserModel.HorizontalAlignment.General;
  48.  
  49. }
  50.  
  51. #endregion
  1.  
  1.  

nopi excel 导入的更多相关文章

  1. Nopi Excel导入

    http://download.csdn.net/detail/diaodiaop/7611721 using System.Collections.Generic; using System.Dat ...

  2. C# Excel导入、导出【源码下载】

    本篇主要介绍C#的Excel导入.导出. 目录 1. 介绍:描述第三方类库NPOI以及Excel结构 2. Excel导入:介绍C#如何调用NPOI进行Excel导入,包含:流程图.NOPI以及C#代 ...

  3. C# Excel导入、导出

    本篇主要介绍C#的Excel导入.导出. 目录 1. 介绍:描述第三方类库NPOI以及Excel结构 2. Excel导入:介绍C#如何调用NPOI进行Excel导入,包含:流程图.NOPI以及C#代 ...

  4. 企业级自定义表单引擎解决方案(十六)--Excel导入导出

    Excel对于后端管理系统来说,永远都是绕不开的话题,开发Excel导入导出功能往往都比较麻烦,因为涉及到Excel导入模板制作.Excel表格数据与系统数据库表字段映射.Excel导入数据验证.验证 ...

  5. ASP.NET MVC5+EF6+EasyUI 后台管理系统(63)-Excel导入和导出-自定义表模导入

    系列目录 前言 上一节使用了LinqToExcel和CloseXML对Excel表进行导入和导出的简单操作,大家可以跳转到上一节查看: ASP.NET MVC5+EF6+EasyUI 后台管理系统(6 ...

  6. 解析大型.NET ERP系统 设计通用Microsoft Excel导入功能

    做企业管理软件很难避免与Microsoft Excel打交道,常常是软件做好了,客户要求说再做一个Excel导入功能.导入Excel数据的功能的难度不大,从Excel列数据栏位的取值,验证值,再导入到 ...

  7. (转)高效的将excel导入sqlserver中

    大部分人都知道用oledb来读取数据到dataset,但是读取之后怎么处理dataset就千奇百怪了.很多人通过循环来拼接sql,这样做不但容易出错而且效率低下,System.Data.SqlClie ...

  8. 安全的将excel导入sqlite3的解决方案

    最近在做一个小项目时,需要把一个excel中的数据保存到sqlite3数据库中以备后用,表中有字符也有数字,要用到特定的数据类型方便后续使用,参照网上的方法,将excel文件转换为csv文件后,在导入 ...

  9. 利用反射实现通用的excel导入导出

    如果一个项目中存在多种信息的导入导出,为了简化代码,就需要用反射实现通用的excel导入导出 实例代码如下: 1.创建一个 Book类,并编写set和get方法 package com.bean; p ...

随机推荐

  1. wampServer安装注意

    http://www.glbwl.com/wampServer-403-forbidden.html http://jingyan.baidu.com/article/e75aca8578147d14 ...

  2. POJ 3278 Catch That Cow

    注:本人英语很渣,题目大意大多来自百度~=0= 题目大意 农民约翰需要抓住他的牛,他和他的牛在一条直线上(估计是一维生物),约翰在N (0 ≤ N ≤ 100,000)处,他的牛在 K (0 ≤ K ...

  3. Cocopods不显示三方库的解决方法

    把 $(PODS_ROOT) 的字段添加到 User Header Search Paths 的文件路径下

  4. linux环境下安装oracle数据库 原文在卡卡100http://www.cnblogs.com/kaka100

    centos55_oracle11gr2_install   第一个阶段:安装centos55 a:安装centos5.5   用图形界面安装  硬盘 16G 注意:用图形界面安装.. 第二个阶段:配 ...

  5. Apache MiNa 实现多人聊天室

    Apache MiNa 实现多人聊天室 开发环境: System:Windows JavaSDK:1.6 IDE:eclipse.MyEclipse 6.6 开发依赖库: Jdk1.4+.mina-c ...

  6. AngularJS的学习笔记(二)

    只给自己看的. AngularJS 表达式 angularjs 使用表达式将数据绑定到html中. AngularJS 表达式写在双大括号内:{{ expression }}. AngularJS 表 ...

  7. php序列化和反序列化

    一 使用系统函数serialize和unserilazie <?php class A { public $a = "aa"; public $b = 10; functio ...

  8. AngularJs的UI组件ui-Bootstrap分享(十一)——Typeahead

    Typeahead指令是一个用于智能提示或自动完成的控件,就像Jquery的AutoComplete控件一样.来看一个最简单的例子: <!DOCTYPE html> <html ng ...

  9. DotSpatial 删除图层要素

    //添加图层后,定义图层,并获取图层 //遍历要素,并进行删除 FeatureSet fs = null; fs = (FeatureSet) map1.Layers[0].DataSet; //要素 ...

  10. Number of 1 Bits(Difficulty: Easy)

    题目: Write a function that takes an unsigned integer and returns the number of ’1' bits it has (also ...