扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
前言
创新互联公司长期为上千余家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为市北企业提供专业的成都做网站、成都网站设计,市北网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。大家都知道,不少仪器工作站可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];
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流