OpenXml 2.0 读取Excel
Excel 单元格中的数据类型包括7种:
Boolean、Date、Error、InlineString、Number、SharedString、String
读取源代码:
List<string> returnList = new List<string>();
using (SpreadsheetDocument spreadsheetDocument = SpreadsheetDocument.Open(filename, false))
{
foreach (Sheet sheet in spreadsheetDocument.WorkbookPart.Workbook.Descendants<Sheet>())
{
returnList.Add(sheet.Name);
} foreach (Sheet sheet in spreadsheetDocument.WorkbookPart.Workbook.Descendants<Sheet>())
{
IEnumerable<Sheet> IEnumerableSheet = spreadsheetDocument.WorkbookPart.Workbook.Descendants<Sheet>().Where(s => s.Name == sheet.Name);
WorksheetPart worksheetPart = (WorksheetPart)spreadsheetDocument.WorkbookPart.GetPartById(IEnumerableSheet.First().Id);
IEnumerable<Row> rows = worksheetPart.Worksheet.Descendants<Row>();
SharedStringTable sharedStringTable = spreadsheetDocument.WorkbookPart.SharedStringTablePart.SharedStringTable;
foreach (Row row in rows)
{
foreach (Cell cell in row.Descendants<Cell>())
{
if (cell.ChildElements.Count == )
{ }
else
{
if (cell.DataType != null)
{
//获取其中共享数据类型
if (cell.DataType.Value == CellValues.SharedString)
{
string cellValue = sharedStringTable.ChildElements[int.Parse(cell.CellValue.InnerText)].InnerText;
returnList.Add(cellValue);
}
}
} }
}
}
return returnList;
}
其中Bool类型数据0会处理为False 1处理成True;
其中最不好处理的数据就是时间Date;
因为工作需要,目前只处理共享数据
OpenXml 2.0 读取Excel的更多相关文章
- Microsoft.Jet.OLEDB.4.0读取EXCEL数据
用Microsoft.Jet.OLEDB.4.0读取EXCEL数据的代码是这样的: string ConnStr="Provider=Microsoft.Jet.OLEDB.4.0; ...
- Openxml入门---Openxm读取Excel数据
Openxml读取Excel数据: 有些问题,如果当Cell 里面是 日期和浮点型的话,对应的Cell.DataType==Null,对应的时间会转换为一个浮点型,对于这块可以通过DateTime.F ...
- VB6.0 读取Excel文件并返还数据集RecordSet
读取Excel文件并返还数据集RecordSet 该方法适用于.xls,.xlsx类型的文件 读取Excel文件的Function: '取得数据集 Function getRecordSetForEx ...
- VC6.0读取Excel文件数据
啰嗦一下:本人所在公司从事碟式斯特林太阳能发电设备的研发与销售.单台设备图如下: 工作原理如下:整个设备大致可分为五个部分, 1.服务器,负责气象.发电等数据存取,电.网连接等处理: 2.气象站,通过 ...
- POI 4.0 读取Excel
... package POIXLS; import java.io.File; import java.io.FileInputStream; import java.util.ArrayList; ...
- java--poi读取excel图片和内容(支持03版本)
有的时候需要将excel中所包含的图片在导入的时候取出来存到服务器中, 详细实现代码如下: package com.liuf.util; import java.io.BufferedInputStr ...
- php phpexcel 读取excel文件数据
public function readExcel(){ $allPath = '/home/examine\video/list.xls'; \think\Loader::import('exten ...
- php读取excel文件并导入数据库(表头任意设定)
最近收到一个很奇葩的需求,要求上传excel员工工资表,表格表头不固定,导入后字段名为表头的拼音,每月导入一次,当月重复导入则覆盖现有的当月表头,并且可以按照在界面上按照月份筛选显示,我写的代码主要包 ...
- Yii2使用PHPExcel读取excel
个人使用过程中保存一些使用PHPExcel的经验,以便后来翻阅:与PHP的Yii框架结合,可以轻松使用.而且根本不用网上所说的修改Yii的自动加载文件等方法.具体使用方法:下载phpoffice ht ...
随机推荐
- 每天一个Linux命令(13)less命令
less命令的作用与more十分相似,都可以用来浏览文字档案的内容,不同的是less命令允许用户向前或向后浏览文件,而more命令只能向前浏览. 用less命令显示文件时,用PageUp键向上翻页,用 ...
- 通过tile和url判断页面跳转是否正确
通过webdriver中的.title和.current_url获取title和url from time import sleep from selenium import webdriver br ...
- Spark Structured Streaming框架(2)之数据输入源详解
Spark Structured Streaming目前的2.1.0版本只支持输入源:File.kafka和socket. 1. Socket Socket方式是最简单的数据输入源,如Quick ex ...
- shell脚本默认变量值
脚本参数相关: $# 是传给脚本的参数个数 $ 是脚本本身的名字 $ 是传递给该shell脚本的第一个参数 $ 是传递给该shell脚本的第二个参数 $@ 是传给脚本的所有参数的列表 $* 是以一个单 ...
- delphi函数返回多个值的应用
方法1: function test(var a,b,c:integer):integer; begin end; 方法2: type info = record name:string; age : ...
- QT 巧用QSignalMapper分类有序地处理大量信号
转自--> http://blog.csdn.net/cuteqt/article/details/4306900 QSignalMapper这个类并不是个新鲜概念, 早在Qt2里就已经存在, ...
- Win7.窗口自动滚动回到屏幕
PS:笔记本 ThinkPad E440 1.前提:窗口 的一部分位于在屏幕的外面,此窗口处于激活的状态 操作:鼠标放置在窗口内部,鼠标继续往屏幕外部移动,鼠标没有任何其他事件(只有 MouseMov ...
- python3 字符串属性(一)
python3 字符串属性 >>> a='hello world' >>> dir(a) ['__add__', '__class__', '__contains_ ...
- HYSBZ - 1588 splay
题意:每天给你一个数,要求统计最小波动值,强制在线的就是每次从已经出现过的数值中找与当前值间隔最小的加起来 题解:splay维护,同时求解当前值的前驱和后继,找距离小的那个就好了 splay是一种二叉 ...
- java_面试_01_一个月的面试总结(java)
重点知识 由于我面试的JAVA开发工程师,针对于JAVA,需要理解的重点内容有: JVM内存管理机制和垃圾回收机制(基本每次面试都会问,一定要搞得透彻) JVM内存调优(了解是怎么回事,一般做项目过程 ...