C#仪器数据文件解析Excel文件的方法浅析(xls、xlsx)

作者:马洪彪 时间:2023-09-18 01:40:57 

前言

大家都知道,不少仪器工作站可xls文件和2007+的xl以将数据导出为Excel文件,包括97-2003版本的sx文件。

采集Excel文件相比采集pdf文件更容易、程序更健壮,毕竟Excel中数据有明确的行、列的定义,利于数据解析。

Excel早期的xls文件和后来的xlsx文件的格式不一样,xls是二进制特定格式文件,xlsx是zip压缩包,其中数据使用xml定义。虽然两种文件格式定义不同,但解析文件数据可以通过中间件,因此只要理解了Excel文件的工作簿、sheet页、行、列、单元格等概念即可,无需了解其文件的详细定义方式。

常用的采集Excel文件数据的方式有:

      1.通过OLE DB的方式,将Excel文件作为数据库进行查询来获取数据;

      2.使用MS Excel应用程序来读取Excel文件数据;

      3.使用WPS应用程序来读取;

      4.使用其他Office软件来读取;

      5.使用MS Open XML来读取;

      6.使用NPOI组件读取;

      7.……

方式有很多,但各有优劣,比如MS Excel应用程序有版权的问题,WPS等应用程序即使免费也需要安装,另外通过DCOM调用应用程序需要配置权限;

无需应用程序的方式,可以通过NPOI、MS Open XML等方式,使用XML读取Excel的组件一般仅支持excel 2007+,毕竟该版本的Excel文件是xml的;

但NPOI比较逆天,可以读取xls和xlsx文件,并且操作方式一致。

以下代码为打开Excel文件,并读取其sheet页、行、单元格值:


FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read);
xssfWorkbook = new XSSFWorkbook(fileStream);
ISheet sheetAt = xssfWorkbook.GetSheetAt(num);
IRow row = sheetAt.GetRow(rownum);
ICell cell = row.Cells[index];

来源:http://www.cnblogs.com/mahongbiao/p/7672920.html

标签:c#,解析excel,xlsx
0
投稿

猜你喜欢

  • c#多线程之间的排他锁的实现

    2022-06-11 12:31:53
  • 使用adb or fastboot命令进入高通的9008(edl)模式的两种方法

    2023-02-02 15:50:49
  • java高并发InterruptedException异常引发思考

    2022-09-09 20:15:34
  • 带你了解Java数据结构和算法之无权无向图

    2023-12-24 10:54:05
  • Android RollPagerView实现轮播图

    2023-06-12 21:10:32
  • Spring Security实现两周内自动登录"记住我"功能

    2021-12-15 17:59:22
  • Java面向对象程序设计:继承,多态用法实例分析

    2021-08-03 06:54:04
  • 解析Java和Eclipse中加载本地库(.dll文件)的详细说明

    2023-11-11 01:23:31
  • 基于Spring整合mybatis注解扫描是否成功的问题

    2023-01-23 18:29:22
  • MyBatis-plus中的模糊查询解读

    2022-06-16 08:27:03
  • Unity通过脚本创建网格Mesh的方法

    2023-02-26 23:38:00
  • 在Android设备上搭建Web服务器的方法

    2023-06-23 23:38:36
  • Java文件断点续传实现原理解析

    2022-08-21 02:05:39
  • c# 实现IComparable、IComparer接口、Comparer类的详解

    2022-07-23 00:25:56
  • spring事务之事务挂起和事务恢复源码解读

    2023-11-26 18:50:42
  • Android判断网络状态的代码

    2022-08-17 08:01:15
  • Android横竖屏切换及其对应布局加载问题详解

    2023-12-17 20:45:13
  • Struts2源码分析之ParametersInterceptor拦截器

    2023-11-05 00:41:37
  • Spring Security登录表单配置示例详解

    2023-10-12 09:03:55
  • java查找图中两点之间所有路径

    2022-10-04 03:08:11
  • asp之家 软件编程 m.aspxhome.com