決議帶命名空間的xml檔案,xml檔案格式為:
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns:sdl="http://sdl.com/FileTypes/SdlXliff/1.0" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2" sdl:version="1.0">
<file original="C:\Users\rose\Documents\Studio 2017\Projects\ProjectDemo01\zh-CN\file.docx" datatype="x-sdlfilterframework2" source-language="zh-CN" target-language="en-US">
<header>
<reference>
<internal-file form="base64">
</internal-file>
</reference>
<sdl:ref-files>
<sdl:ref-file uid="0" id="Docx.DependencyFileId" name="efq0zcc0.sce.docx" o-path="C:\Users\王興強\Documents\Studio 2017\Projects\ProjectDemo01\zh-CN\file.docx" date="12/09/2015 06:10:03" expected-use="Generation"/>
</sdl:ref-files>
... ... ... ... ... ... ... ... ... ...
用C#決議方法為:
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.Load(TextEditFilePath.Text);
XmlNamespaceManager namespaceManager = new XmlNamespaceManager(xmlDocument.NameTable);
namespaceManager.AddNamespace("sdl", "http://sdl.com/FileTypes/SdlXliff/1.0");
XmlNode xmlNode_file = xmlDocument.SelectSingleNode("test:xliff/test:file", namespaceManager);
xmlNode_file物件回傳為null,哪里沒寫對,望大神指正。謝謝大家。
uj5u.com熱心網友回復:
XmlNode xmlNode_file = xmlDocument.SelectSingleNode("sdl:xliff/sdl:file", namespaceManager);命名空間名寫錯了,不是testuj5u.com熱心網友回復:
命名空間名是不是:sdl,能提供完整解決方案嗎。轉載請註明出處,本文鏈接:https://www.uj5u.com/net/60530.html
標籤:C#
