c# openxml 删除xlsx、xls的外链示例代码
要删除一个 Excel 文件(.xlsx)中的外部链接(external links),你可以使用 OpenXML SDK。外部链接通常包含在 `externalReferences` 元素中。以下是一个简单的 C# 代码示例,演示如何使用 OpenXML SDK 删除外部链接:
using DocumentFormat.OpenXml.Packaging; using DocumentFormat.OpenXml.Spreadsheet; class Program { static void Main() { string filePath = "your_file_path.xlsx"; // 备份文件,以防需要还原 string backupFilePath = "backup_file_path.xlsx"; System.IO.File.Copy(filePath, backupFilePath, true); // 删除外部链接 RemoveExternalLinks(filePath); Console.WriteLine("External links removed successfully."); } static void RemoveExternalLinks(string filePath) { using (SpreadsheetDocument spreadsheetDoc = SpreadsheetDocument.Open(filePath, true)) { WorkbookPart workbookPart = spreadsheetDoc.WorkbookPart; // 删除 externalReferences 元素 ExternalReferences externalReferences = workbookPart.Workbook.Descendants<ExternalReferences>().FirstOrDefault(); if (externalReferences != null) { externalReferences.Remove(); } // 保存更改 workbookPart.Workbook.Save(); } } }
请确保将文件路径替换为你实际的文件路径。此代码将备份原始文件,并在原始文件上删除外部链接。如果需要还原,可以使用备份文件。记得在使用此代码前备份你的数据,以免不小心删除了重要的信息。
对于删除 Excel 文件(.xls)中的外部链接,你需要使用 NPOI(一个用于处理 Office 文件的开源库)或其他类似的库,因为 OpenXML SDK 主要用于处理 Office 2007及更高版本(.xlsx)的文件。
以下是使用 NPOI 的示例代码,用于删除 .xls 文件中的外部链接:
using NPOI.HSSF.UserModel; using NPOI.SS.UserModel; using System; using System.IO; class Program { static void Main() { string filePath = "your_file_path.xls"; // 备份文件,以防需要还原 string backupFilePath = "backup_file_path.xls"; File.Copy(filePath, backupFilePath, true); // 删除外部链接 RemoveExternalLinks(filePath); Console.WriteLine("External links removed successfully."); } static void RemoveExternalLinks(string filePath) { using (FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.ReadWrite)) { HSSFWorkbook workbook = new HSSFWorkbook(fileStream); // 删除外部链接 workbook.ExternalLinksTable.RemoveAggregate(); // 保存更改 workbook.Write(fileStream); } } }
请确保将文件路径替换为你实际的文件路径。这段代码将备份原始文件并在原始文件上删除外部链接。如果需要还原,可以使用备份文件。同样,请在使用此代码之前备份你的数据,以免不小心删除了重要的信息。
到此这篇关于c# openxml 删除xlsx、xls的外链的文章就介绍到这了,更多相关c# openxml 删除xlsx、xls的外链内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
C#基于Mongo的官方驱动手撸一个Super简易版MongoDB-ORM框架
本文给大家分享C#基于Mongo的官方驱动手撸一个简易版MongoDB-ORM框架,是一款属于super简易版的,通过图文的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧2021-05-05C# 利用ICSharpCode.SharpZipLib实现在线压缩和解压缩
本文主要主要介绍了利用ICSharpCode.SharpZipLib第三方的DLL库实现在线压缩和解压缩的功能,并做了相关的代码演示。2016-04-04
最新评论