OpenXML:C#读取Excel文档

Excel的文档,本身就是一个压缩包,使用压缩工具打开一个excel文件,可以看到里边的文件列表如下图:
在这里插入图片描述
在这里插入图片描述
里边的文件主要就是一些xml文件和其他的素材
OpenXML是微软官方一个开源的操作Word、Excel和PPT的SDK,用C#进行开发,使用此类库可以方便的对office这三类主要文档进行操作,而且还不用安装Office程序。
下边列举一下,如何使用OpenXML读取一个Excel文档中的内容:
首先,使用nuget安装OpenXML的类库引用,也可以从网上直接下载类库进行引用;
在这里插入图片描述
添加命名空间

 using DocumentFormat.OpenXml.Packaging;
 using DocumentFormat.OpenXml.Spreadsheet;
// 使用代码打开一个Excel文档
using (SpreadsheetDocument spreadsheetDocument = SpreadsheetDocument.Open("文件路径", false))
{
WorkbookPart workbookPart = spreadsheetDocument.WorkbookPart;
//选择Excel的sheet页,和Excel中的实际顺序对应
WorksheetPart worksheetPart = workbookPart.WorksheetParts.ElementAt(1);
//sheet页中的内容
SheetData _Sheet1data = worksheetPart.Worksheet.Elements<SheetData>().First();
//有些Excel中的标题等中英文内容会放在SharedStringTable中
var _sharepart = workbookPart.SharedStringTablePart;
//循环Excel表中的行数据
 foreach (Row r in _Sheet1data.Elements<Row>())
 { 
 //行数据中的每个Cell中数据
foreach (Cell c in r.Elements<Cell>())
{
string text = c.CellValue.Text;
//判断是不是在SharedStringTable中
if (c.DataType != null)
{
var _xmlpart = _sharepart.SharedStringTable.ElementAt(Convert.ToInt32(c.CellValue.Text));
text = _xmlpart.FirstChild.InnerText;
} 
//最终获得text数据
}
}

在这里插入图片描述

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值