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(); } } }
請確保將文件路徑替換為你實際的文件路徑。此代碼將備份原始文件,并在原始文件上刪除外部鏈接。如果需要還原,可以使用備份文件。記得在使用此代碼前備份你的數(shù)據(jù),以免不小心刪除了重要的信息。
對于刪除 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); } } }
請確保將文件路徑替換為你實際的文件路徑。這段代碼將備份原始文件并在原始文件上刪除外部鏈接。如果需要還原,可以使用備份文件。同樣,請在使用此代碼之前備份你的數(shù)據(jù),以免不小心刪除了重要的信息。
到此這篇關于c# openxml 刪除xlsx、xls的外鏈的文章就介紹到這了,更多相關c# openxml 刪除xlsx、xls的外鏈內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
DevExpress之ChartControl實現(xiàn)柱狀圖演示實例
這篇文章主要介紹了DevExpress中ChartControl實現(xiàn)柱狀圖演示方法,實例展示了相關繪圖函數(shù)的具體用法,具有一定的實用價值,需要的朋友可以參考下2014-10-10