Computer >> Máy Tính >  >> Lập trình >> C#

Làm thế nào để điền XDocument từ String trong C #?

XML là một ngôn ngữ tự mô tả và nó cung cấp dữ liệu cũng như các quy tắc để xác định nó chứa thông tin gì. Giống như HTML, XML là một tập hợp con của SGML - Ngôn ngữ Đánh dấu Tổng quát Chuẩn.

Lớp XDocument chứa thông tin cần thiết cho một tài liệu XML hợp lệ, bao gồm khai báo XML, hướng dẫn xử lý và nhận xét.

Lưu ý rằng chúng ta chỉ phải tạo các đối tượng XDocument nếu chúng ta yêu cầu chức năng cụ thể được cung cấp bởi lớp XDocument. Trong nhiều trường hợp, chúng ta có thể làm việc trực tiếp với XElement. Làm việc trực tiếp với XElement là một mô hình lập trình đơn giản hơn.

XDocument bắt nguồn từ XContainer. Do đó, nó có thể chứa các nút con. Tuy nhiên, các đối tượng XDocument chỉ có thể có một nút XElement con. Điều này phản ánh tiêu chuẩn XML rằng chỉ có thể có một phần tử gốc trong tài liệu XML. XDocument có sẵn trong System.Xml.Linq không gian tên.

Ví dụ

Hãy để chúng tôi xem xét chuỗi dưới đây ở định dạng XML và cần được điền dưới dạng asXML.

<Departments>
   <Department>Account</Department>
   <Department>Sales</Department>
   <Department>Pre-Sales</Department>
   <Department>Marketing</Department>
</Departments>
using System;
using System.Xml.Linq;
namespace DemoApplication{
   public class Program{
      public static void Main(){
         string xmlString = @"<Departments>
            <Department>Account</Department>
            <Department>Sales</Department>
            <Department>Pre-Sales</Department>
            <Department>Marketing</Department>
         </Departments>";
         XDocument xml = XDocument.Parse(xmlString);
         Console.ReadLine();
      }
   }
}

Tương tự, nếu chúng ta muốn chuyển đổi tệp chứa xml thành XDocument, chúng ta có thể sử dụng XDocument.Load (đường dẫn) .

Ví dụ

using System;
using System.Xml.Linq;
namespace DemoApplication{
   public class Program{
      public static void Main(){
         string xmlPath = @"D:\DemoXml.txt";
         XDocument xml = XDocument.Load(xmlPath);
         Console.ReadLine();
      }
   }
}

Đầu ra

Trong cả hai trường hợp trên, xmlString được chuyển đổi thành Xdocumet như bên dưới.

Làm thế nào để điền XDocument từ String trong C #?