手机打开HTML文件后超链接断,Epplus阅读HTML片段的超链接我

本文探讨了Epplus在读取Excel超链接时遇到的挑战,涉及到工作簿结构和OpenOfficeXML标准。通过实例展示了如何使用`ExcelRange.Value`获取超链接内容,同时提到了xlsx文件的内部结构对于理解问题的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这似乎是与擅长的方式储存超链接和Epplus读取它们的方式的问题。 Excel将超链接存储在工作表本身以及工作表的关系文件中,该文件存储工作簿部分(工作表,样式,字符串等)之间的任何类型的交叉引用。这一切都与一个xlsx文件的结构有关,这个文件是基于OpenOffice XML标准的xml:OpenOffice XML Info

所以问题是Epplus依赖于那个不包含片段的关系文件,而“超链接'工作表xml中的节点。如果通过重命名将xlsx文件作为zip文件打开,您可以在其细节中看到所有这些内容。

所以,简短的回答是你不得不使用单元格对象的`.Value'。不够干净,但它会起作用。例如,如果我创建这样的细胞:

ERDJP.png

与此代码:

var fi = new FileInfo(@"c:\temp\Html_Fragment.xlsx");

using (var pck = new ExcelPackage(fi))

{

var wb = pck.Workbook;

var ws = wb.Worksheets.FirstOrDefault();

ExcelRange er = ws.Cells[1,1];

var hyperlink = er.Hyperlink;

Console.WriteLine(er.Value);

Console.WriteLine("{{Value: {0}, Hyperlink: {1}}}", er.Value, er.Hyperlink.AbsoluteUri);

}

给出了这样的:

{

Value: https://msdn.microsoft.com/en-us/library/aa982683(v=office.12).aspx#Anchor_3,

Hyperlink: https://msdn.microsoft.com/en-us/library/aa982683(v=office.12).aspx

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值