簡體   English   中英

有沒有辦法在 C# 中讀取主 xml 標記的名稱?

[英]Is there a way to read the name of the main xml tag in C#?

我有 2 個 xml 文件:

<?xml version="1.0" encoding="UTF-8"?>
<abc300:TEST xmlns:iabc="http://www.isa.com/iabc/1_0/basic/schema" xmlns:abc300="http://www.isa.com/iabc/1_0/abc300/schema" >
        <abc300:Header>
            <abc300:AbcCode>111</abc300:AbcCode>
        </abc300:Header>
</abc300:TEST>

<?xml version="1.0" encoding="UTF-8"?>
<abc301:TEST xmlns:iabc="http://www.isa.com/iabc/1_0/basic/schema" xmlns:abc300="http://www.isa.com/iabc/1_0/abc301/schema" >
    <abc301:Header>
        <abc301:AbcCode>111</abc301:AbcCode>
    </abc301:Header>
</abc301:TEST>

我想知道是否有辦法通過 C# 獲取abc300abc301 名稱標簽,以便我可以(通過程序)查看用戶使用的 xml 文件。 已經謝謝了。

使用 Xml Linq :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Xml.Linq;


namespace ConsoleApplication170
{
    class Program
    {
        const string FILENAME = @"c:\temp\test.xml";
        static void Main(string[] args)
        {
            XDocument doc = XDocument.Load(FILENAME);
            string rootStr = doc.Root.Name.LocalName;
            XElement root = doc.Root;
            XNamespace ns = root.Name.Namespace;
            string prefix = root.GetPrefixOfNamespace(ns);
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM