1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Chèn thêm nút vào tài liệu XML trong VB.Net doc

6 623 2

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 6
Dung lượng 111,04 KB

Nội dung

Chèn thêm nút vào tài liệu XML trong VB.Net Điều chỉnh một tài liệu XML bằng cách chèn vào dữ liệu mới.. Tạo nút bằng một phương thức của XmlDocument như CreateElement, CreateAttribute,

Trang 1

Chèn thêm nút vào tài liệu XML trong VB.Net

Điều chỉnh một tài liệu XML bằng cách chèn vào dữ liệu mới

Tạo nút bằng một phương thức của XmlDocument (như

CreateElement, CreateAttribute, CreateNode ) Kế tiếp, chèn nó vào bằng một phương thức của XmlNode (như InsertAfter, InsertBefore, hay AppendChild)

Chèn một nút vào XmlDocument bao gồm hai bước: tạo nút rồi chèn

nó vào vị trí thích hợp Sau đó, bạn có thể gọi XmlDocument.Save để lưu lại những thay đổi

Để tạo một nút, bạn sử dụng một trong các phương thức của

XmlDocument bắt đầu bằng từ (tiền tố) Create, tùy thuộc vào kiểu của nút Điều này bảo đảm nút sẽ có cùng không gian tên với phần còn lại của tài liệu Kế tiếp, bạn phải tìm một nút phù hợp và sử dụng một trong các phương thức chèn của nó để thêm nút mới vào

Ví dụ dưới đây sử dụng kỹ thuật này để thêm một item mới:

Trang 2

Public Module XmlInsertTest

Public Sub Main()

' Nạp tài liệu

Dim Doc As New XmlDocument

Doc.Load("orders.xml")

' Tạo một phần tử mới

Dim ItemNode As XmlNode

ItemNode = Doc.CreateElement("Item") ' Thêm đặc tính

Dim Attribute As XmlAttribute

Attribute = Doc.CreateAttribute("id")

Attribute.Value = "4312"

ItemNode.Attributes.Append(Attribute ' Tạo và thêm các phần tử con cho nút này Dim NameNode, PriceNode As XmlNode NameNode = Doc.CreateElement("Name") PriceNode = Doc.CreateElement("Price")

Trang 3

ItemNode.AppendChild(NameNode)

ItemNode.AppendChild(PriceNode)

' Thêm dữ liệu text

NameNode.AppendChild(Doc.CreateTextNode("Stapler")) PriceNode.AppendChild(Doc.CreateTextNode("12.20")) ' Thêm phần tử mới Trong trường hợp này, chúng ta

' cho nó làm con ở cuối danh sách item

Doc.DocumentElement.ChildNodes(1).AppendChild(ItemNode) ' Lưu tài liệu

Doc.Save("orders.xml")

Console.WriteLine("Changes saved.")

Console.ReadLine()

End Sub

End Module

Tài liệu mới trông giống như sau:

<?xml version="1.0"?>

<Order id="2005-04-12-4996">

Trang 4

<Client id="CMPSO33UL">

<Name>CompuStation</Name>

</Client>

<Item id="2005">

<Name>Calculator</Name>

<Price>24.99</Price>

</Item>

<Item id="4311">

<Name>Laser Printer</Name>

<Price>400.75</Price>

</Item>

<Item id="4312">

<Name>Stapler</Name>

<Price>12.20</Price>

</Item>

</Order>

Để đơn giản hóa việc thêm vào những dữ liệu giống nhau, bạn có thể

sử dụng phương thức CloneNode, phương thức này sẽ tạo một bản

Trang 5

sao của một nút CloneNode nhận một đối số luận lý Nếu giá trị này

là True, CloneNode sẽ sao lại toàn bộ nhánh, với tất cả các nút lồng bên trong Và dưới đây là đoạn mã tương đương:

' Nạp tài liệu

Dim Doc As New XmlDocument

Doc.Load("orders.xml")

' Tạo một phần tử mới dựa trên một item hiện có

Dim ItemNode As XmlNode

ItemNode =

Doc.DocumentElement.ChildNodes(1).LastChild.CloneNode(True) ' Điều chỉnh dữ liệu

ItemNode.Attributes(0).Value = "4312"

ItemNode.ChildNodes(0).ChildNodes(0).Value = "Stapler"

ItemNode.ChildNodes(1).ChildNodes(0).Value = "12.20"

' Thêm phần tử mới

Doc.DocumentElement.ChildNodes(1).AppendChild(ItemNode)

Trang 6

' Lưu tài liệu

Doc.Save("orders.xml")

Chú ý trong trường hợp này, có một số giả định đang được đặt lên các nút hiện có (ví dụ, giả định con đầu tiên của nút item luôn là tên,

và con thứ hai luôn là giá) Nếu giả định này không bảo đảm đúng, bạn cần phải xét tên của nút

Nguồn: dvpub.com.vn

Ngày đăng: 13/08/2014, 13:21

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w