XML 是 W3C 推薦的結構化格式之一,通常用於存儲和傳輸數據。開發人員非常需要使用應用程序編輯存儲的 XML 數據。為了簡化編輯的要求,本文將指導如何使用 C# 編輯 XML 文件數據。
用於編輯 XML 文件的 .NET API
GroupDocs.Editor 提供文檔編輯解決方案和 API 來編輯大量不同文件格式。它是可與外部編輯器一起使用以進行可視化編輯的 .NET API。在本文中,我們將使用 GroupDocs.Editor for .NET 在 .NET 應用程序中編輯 XML 數據。
要下載 DLL 或 MSI 安裝程序,請訪問 下載部分 或通過 NuGet 在您的 .NET 應用程序中安裝 API。
PM> Install-Package GroupDocs.Editor
如何使用 C# 編輯 XML 文件
直奔目標,我們將通過用一個值替換另一個值來修改 XML 數據。以下是使用 C# 編輯或更新 XML 文件的步驟。
- 使用 Editor 類加載 XML 數據文件。
- 使用 XmlEditOptions 類準備 XML 編輯選項。
- 對於編輯,使用 Edit 方法和準備好的編輯選項創建 EditableDocument 作為源內容。
- 從 EditableDocument 中,使用 GetContent 方法獲取 XML 文件的原始內容。
- 更新 XML 內容中的值。
- 現在使用 FromMarkup 方法從更新的 XML 內容創建一個新的 EditableDocument。
- 為了以不同的格式保存更新的內容,準備相關的保存選項,如 WordProcessingSaveOptions 或 TextSaveOptions。
- 使用 Save 方法以任何格式保存更新的 XML 數據。
以下 C# 代碼片段顯示瞭如何編輯 XML 文件和更新數據,然後將其保存為任何其他格式。
// 通過使用 C# 更新值來編輯 XML 文件
using (Editor editor = new Editor("path/data.xml"))
{
// 創建 XML 編輯選項
Options.XmlEditOptions editOptions = new XmlEditOptions();
editOptions.AttributeValuesQuoteType = QuoteType.DoubleQuote;
editOptions.RecognizeEmails = true;
editOptions.RecognizeUris = true;
editOptions.TrimTrailingWhitespaces = true;
// 可編輯文檔設置
using (EditableDocument beforeEdit = editor.Edit(editOptions))
{
// 隨意編輯
string originalTextContent = beforeEdit.GetContent();
string updatedTextContent = originalTextContent.Replace("John", "Samuel");
List<IHtmlResource> allResources = beforeEdit.AllResources;
// 使用更新的內容創建 EditableDocument
using (EditableDocument afterEdit = EditableDocument.FromMarkup(updatedTextContent, allResources))
{
// 創建文字處理保存選項
Options.WordProcessingSaveOptions wordSaveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Docx);
// 創建 TXT 保存選項
Options.TextSaveOptions txtSaveOptions = new TextSaveOptions();
txtSaveOptions.Encoding = System.Text.Encoding.UTF8;
// 以 DOCX 和 TXT 格式保存編輯的 XML 數據
editor.Save(afterEdit, "path/xmlData.docx", wordSaveOptions);
editor.Save(afterEdit, "path/xmlData.txt", txtSaveOptions);
}
}
}
獲得免費許可證
您可以獲得免費的臨時許可證,以便在不受評估限制的情況下使用 API。
結論
總而言之,我們已經學會了使用 C# 以編程方式編輯 XML 文件數據。您可以使用 文檔 進一步探索 GroupDocs.Editor 的其他功能。要澄清任何歧義,請在 論壇 上聯繫我們。