Tài liệu: Một số kỹ thuật lập trình với DOM

Tài liệu
Nguyễn Tiến Huy

Tóm tắt nội dung

Khái niệm cho phép mô tả kết quả của việc truy vấn thông tin trên tập họp thông tin gốc. Tập họpcon này cũng bao gồm các thành ...
Một số kỹ thuật lập trình với DOM

Nội dung

* Đọc tài liệu XML

Vấn đề :

Cần đọc tài liệu XML trên bộ nhớ phụ vào tạo đối tượng XmlDocument tương ứng

Hướng giải quyết :

Xây dựng hàm đọc tài liệu với

Tham số : Đường dẫn của tập tin Xml tương ứng

Kết quả : Đối tượng XmlDocument

Thuật giải

Khai báo đối tượng XmlDocument Kq

Kq = Dữ liệu đọc từ tập tin Xml với Duong_dan

( Xử lý thông báo lỗi nếu đường dẫn sai hay tập tin tương ứng không có cấu trúc tập tin XML) Trả Kq

- Để có thẻ tái sử dụng hàm trên có thể tạo hàm đọc tài liệu

- Bên trong một đơn thể ( ví dụ LT_XML )

- Bên trong một lớp đối tượng ( với khai báo là hàm mức lớp )

Lập trình với VB.NET

Public Function Doc_tai_lieu(ByVal Duong_dan As String) As XmlDocument

Dim Kq As New XmlDocument

Try Kq.Load(Duong_dan) Catch Loi As Exception

Dim Thong_bao As String = "Lỗi khi đọc tập tin " & Duong_dan & vbCrLf

Thong_bao &= Loi.Message

Console.WriteLine(Thong_bao)

' Hay MessageBox.Show(Thong_bao)

End Try Return Kq End Function

- Bài tập 1

Mục tiêu :

- Tạo lập và sử dụng hàm đọc tài liệu === > Tái sử dụng cho các ứng dụng khác

- Tìm hiểu về các lỗi có thể có khi đọc

Yêu cầu :

Viết chương trình nhập vào đường dẫn của một tập tin Xml và sau đó đọc, xuất nội dung dưới dạng chuỗi của các thẻ bên trong tập tin Xml

Cần thử nghiệm với các trường hợp lỗi khác nhau

- Đường dẫn sai

- Tập tin không có cấu trúc theo định chuẩn XML

- Bài tập 2

Mục tiêu :

- Tìm hiểu và sử dụng một số hàm của DOM

- Mở đầu cho việc trình bày ngôn ngữ truy vấn XPath

Yêu cầu :

Viết chương trình nhập vào đường dẫn của một tập tin Xml và sau đó lần lượt thực hiện các công việc sau

a) Xuất thông tin thống kê

Tổng số các thẻ của tập tin XML Tổng số thuộc tính của tập tin XML

b) Nhập vào chuỗi Ten và cho biết có bao nhiêu thẻ trong tập tin có Ten tương ứng

* Ghi tài liệu XML

Vấn đề :

Cần ghi & #273;ối tượng XmlDocument vào tập tin trên bộ nhớ phụ

Hướng giải quyết :

Xây dựng hàm ghi tài liệu với

Tham số : Đối tượng XmlDocument , Đường dẫn của tập tin Xml tương ứng

Kết quả : Giá trị logic

Thuật giải

Khai báo biến logic Kq

Kq = Kết quả khi ghi

( Xử lý thông báo lỗi khi ghi ) Trả Kq

Để có thẻ tái sử dụng hàm trên có thể tạo hàm đọc tài liệu

- Bên trong một đơn thể ( ví dụ LT_XML )

- Bên trong một lớp đối tượng ( với khai báo là hàm mức lớp )

Lập trình với Vb.NET

Public Function Ghi_tai_lieu(ByVal Tai_lieu As XmlDocument, ByVal Duong_dan As String) As

Boolean

Dim Kq As Boolean = True Try Tai_lieu.Save(Duong_dan) Catch Loi As Exception

Kq = False

Dim Thong_bao As String = "Lỗi khi ghi tập tin " & Duong_dan & vbCrLf

Thong_bao &= Loi.Message

Console.WriteLine(Thong_bao)

' Hay MessageBox.Show(Thong_bao) End Try

Return Kq

End Function

- Bài tập 1

Mục tiêu :

- Tạo lập và sử dụng hàm ghi tài liệu === > Tái sử dụng cho các ứng dụng khác

- Tìm hiểu về các lỗi có thể có khi ghi

- Tìm hiểu và sử dụng một số hàm của DOM

Yêu cầu :

Viết chương trình nhập vào 2 đường dẫn tương ứng 2 tập tin Xml. Đọc 2 tập tin trên vào 2 đối tượng XmlDocument Tai_lieu_1,Tai_lieu_2 và sau đó tạo đối tượng Tai_lieu bao gồm tất cả các đối tượng của Tai_lieu_1,Tai_lieu_2. Ghi Tai_lieu vào tập tin Kq.xml

- Bài tập 2

Mục tiêu :

- Tìm hiểu và sử dụng một số hàm của DOM

- Mở đầu cho việc trình bày về Xpath

Yêu cầu :

Viết chương trình nhập vào đường dẫn tương ứng tập tin Xml và sau đó tạo tập tin ( ghi ) có tên

Nut_la.xml bao gồm tất cả các thẻ không chứa thẻ con của tập tin đang xét

* Đọc đối tượng từ tập tin XML

Vấn đề :

Cần đọc dữ liệu của đối tượng x thuộc loại X tương ứng với thẻ X trong tập tin XML

- Đọc dữ liệu của đối tượng phân số Ps trong tập tin Phan_so.xml

- Đọc dữ liệu của đối tượng điểm Tam trong tập tin Duong_tron.xml

- Đọc dữ liệu của đối tượng loại phòng trong tập tin Bang_don_gia.xml

- Đọc dữ liệu của đối tượng ngoại tệ trong tập tin Bang_ty_gia.xml

Nhận xét :

Cách đọc và tạo đối tượng x tương ứng thẻ X phụ thuộc vào X có phải là thẻ gốc hay không

Nếu X là thẻ gốc === > Đọc trực tiếp

Nếu X là thẻ con của thẻ gốc == > Phải đọc thẻ gốc và sau đó khởi tạo x từ đối tượng XmlElement tương ứng

Hướng giải quyết với X là thẻ gốc

Xây dựng hàm đọc ( hàm mức lớp ) của lớp đối tượng XL_X Tham số : Đường dẫn của tập tin Xml tương ứng

Kết quả : Đối tượng x thuộc lớp XL_X Thuật giải

Khai báo đối tượng Kq

Tai_lieu = Đối tượng XmlDocument đọc từ tập tin với Duong_dan

Goc = Đối tượng XmlElement tương ứng gốc của Tai_lieu

Gán các biến thành phần của Kq tương ứng các thuộc tính của Goc< /p>

Trả Kq

Hướng giải quyết với X là thẻ con Xây dựng hàm khởi tạo ( hàm mức lớp ) của lớp đối tượng XL_X Tham số : Đối tượng XmlElement Nut

Kết quả : Đối tượng x thuộc lớp XL_X Thuật giải

Khai báo đối tượng Kq

Gán các biến thành phần của Kq tương ứng các thuộc tính của Nut

Trả Kq

* Ghi đối tượng vào tập tin XML

Vấn đề :

Cần ghi dữ liệu của đối tượng x thuộc loại X vào với thẻ X trong tập tin XML

- Ghi dữ liệu của đối tượng phân số Ps trong tập tin Phan_so.xml

- Ghi dữ liệu của đối tượng điểm Tam trong tập tin Duong_tron.xml

- Ghi dữ liệu của đối tượng loại phòng trong tập tin Bang_don_gia.xml

- Ghi dữ liệu của đối tượng ngoại tệ trong tập tin Bang_ty_gia.xml

Nhận xét :

Cách ghi đối tượng x tương ứng thẻ X phụ thuộc vào X có phải là thẻ gốc hay không

Nếu X là thẻ gốc === >Tạo thẻ X và Ghi trực tiếp

Nếu X là thẻ con của thẻ gốc == > Chỉ tạo thẻ XmlElement tương ứng và sau đó bổ sung vào thẻ gốc trước khi ghi

Hướng giải quyết với X là thẻ gốc

Xây dựng hàm ghi của lớp đối tượng XL_X

Tham số : Đường dẫn của tập tin Xml tương ứng

Kết quả : Giá trị logic

Thuật giải

Khai báo biến logic Kq

Tai_lieu = Đối tượng XmlDocument

Goc = Đối tượng XmlElement được tạo từ Tai_lieu

Gán giá trị các thuộc tính của Goc tương ứng biến thành phần của đối tượng

Bổ sung Goc vào Tai_lieu

Kq = Kết quả khi ghi Tai_lieu với Duong_dan

Trả Kq

Hướng giải quyết với X là thẻ con

Xây dựng hàm tạo nút của lớp đối tượng XL_X Tham số : Đối tượng XmlDocument Tai_lieu Kết quả : Đối tượng XmlElement

Thuật giải

Khai báo đối tượng XmlElement Kq

Kq = Đối tượng XmlElement tạo ra từ Tai_l;eu

Gán các thuộc tính của Kq tương ứng các biến thành phần của đối tượng

Trả Kq

* Thể hiện cây đối tượng

Vấn đề :

Cần thể hiện các thông tin của tập tin Xml dưới dạng cây tương ứng cấu trúc tổ chức các thẻ

Thể hiện cây Công ty - Đơn vị

Thể hiện cây Trường - Khối - Lớp

Thể hiện cây các số nguyên

Hướng giải quyết chung :

Sử dụng đối tượng thể hiện cây trong thư viện đối tượng giao diện người dùng

Hướng giải quyết cụ thể với Visual Studio.NET Sử dụng đối tượng thể hiện TreeView

Ngôn ngữ XPath

Mục tiêu :

- Mở đầu về ngôn ngữ XPath trong ngữ cảnh kết hợp với DOM

===> Sẽ tiếp tục trình bày chi tiết về hệ thống các hàm khi kết hợp với XSLT ( Chương 4 )

- Cung cấp kiến thức, khái niệm tổng quát về ngôn ngữ truy vấn thông tin

=== > Giúp sinh viên tự tìm hiểu và sử dụng tốt các ngôn ngữ truy vấn khác

Nội dung :

Truy vấn thông tin : Ý niệm chung về xử lý truy vấn thông tin

Ngôn ngữ truy vấn thông tin : Ý niệm chung về các ngôn ngữ truy vấn thông tin

Ngôn ngữ truy vấn XPath : Giới thiệu về Xpath, một loại ngôn ngữ truy vấn thông tin với tài liệu XML Chuỗi định vị : Trình bày chi tiết cách định vị các nút trong Xpath ( nội dung chính )

Chuỗi lọc : Giới thiệu sơ lược về cách lọc dữ liệu

* Truy vấn thông tin

Truy vấn thông tin

- Một trong các loại xử lý quan trọng và rất thông dụng

- Loại xử lý cho phép trích rút thông tin về tập họp con thông tin của một tập họp thông tin nào đó

Tập họp thông tin

Khái niệm chung mô tả các thông tin đuợc biểu diễn theo một dạng nào đó. Đặc điểm của tập họp thông tin đang xét là các thông tin trong tập họp này phải bao gồm bên trong các thành phần con Tp1,Tp2,... theo một cấu trúc nào đó.

- Mảng 1 chiều các số nguyên là tập họp các thông tin với các thành phần con là các số nguyên

- Mảng 2 chiều các phân số là tập họp các thông tin với các thành phần con trực tiếp là các phân số.

Thành phần con này lại đuợc cấu trúc từ 2 thành phần con khác là tử số, mẫu số

- Hệ thống các tập tin trong một đĩa là tập họp các thông tin với các thành phần con là các tập tin, thư mục. Các thành phần này đuợc cấu trúc theo dạng cây

- Cơ sở dữ liệu của phân mềm quản lý nhân sự là tập họp thông tin với các thành phần con là các bảng dữ liệu ( quan hệ ) : NHAN_VIEN, TRINH_DO, DON_VI , v... . Các bảng này có cấu trúc và liên kết với nhau theo các ý niệm trong mô hình quan hệ

- Tài liệu XML (với mô hình DOM ) là một tập họp thông tin với các thành phần con là các nút. Các nút này đuợc sắp xếp theo dạng cây

Tập họp con thông tin

Khái niệm cho phép mô tả kết quả của việc truy vấn thông tin trên tập họp thông tin gốc. Tập họpcon này cũng bao gồm các thành phần con , các thành phần con cũng có cách biểu diễn và cấu trúc riêng.

Cấu trúc của thành phần con thông thường là trùng với cấu trúc trong tập họp gốc nhưng không nhất thiết.

- Tập họp các số nguyên dương trong mảng 1 chiều a các số nguyên

- Tập họp các phân số có giá trị lớn hơn 1 trong mảng 2 chiều các phân số

- Tập họp các tập tin có tên bắt đầu với chuỗi ký tự A

- Tập họp các nhân viên có tuổi từ 15 đến 20 trong danh sách nhân viên

- Tập họp các nút không có nút con ( nút lá ) trong tập tin Xml

* Ngôn ngữ truy vấn thông tin

- Một trong các loại ngôn ngữ đặc tả

- Cho phép đặc tả tập họp con các thông tin cần truy vấn dưới dạng một chuỗi : Chuỗi truy vấn

Tùy theo dạng thông tin cần truy vấn, có rất nhiều ngôn ngữ truy vấn đã được đề xuất.

Với các cấu trúc dữ liệu mảng, ngôn ngữ truy vấn rất đơn giãn với chuỗi truy vấn chỉ bao gồm một chỉ số

( mảng 1 chiều ) hay biểu thức gồm 2 thành phần : chỉ số dòng, chỉ số cột ( mảng 2 chiều )

Truy xuất phần tử thứ 3 trong mảng 1 chiều a a[3]

Truy vấn phần tử thuộc dòng 2, cột 4 trong mảng 2 chiều b b[2][4]

Với hệ thống tập tin, chuỗi truy vấn có dạng đuờng dẫn bao hàm bên trong tên ổ đĩa , tên các thư mục và tên tập tin

Truy xuất tập tin THONG_BAO.Txt trong thư mục gốc đĩa C C:\THONG_BAO.Txt

Truy xuất các tập tin trong thư mục A là con thư mục gốc đĩa C C:\A\*.*

Với cơ sỡ dữ liệu quan hệ, ngôn ngữ truy vấn đuợc sử dụng thông dụng là ngôn ngữ SQL. Chuỗi truy vấn trong ngôn ngữ này có cấu trúc phức tạp hơn rất nhiều so với các ví dụ trên ( và như thể khà năng truy vấn cũng tăng lên rất nhiều )

Truy xuất hồ sơ các nhân viên có đơn vị là đơn vị X với mã số là 5

Select * From NHAN_VIEN Where MDV=5

Với tập tin XML, mô hình DOM cho phép truy vấn thông tin với ngôn ngữ truy vấn Xpath. Chuỗi truy vấn trong Xpath có cấu trúc tương tự như đuờng dẫn ( của hệ thống tập tin ) nhưng phức tạp hơn rất nhiều với khái niệm về các trục định vị và bộ lọc ( sẽ trình bày chi tiết sau )

Truy xuất các nút có giá trị là số nguyên dương trong cây các số nguyên

//Nut[@Gia_tri>0]

Các thành phần chính trong ngôn ngữ truy vấn

Mỗi ngôn ngữ truy vấn sẽ có dạng khác nhau về cấu trúc của chuỗi truy vấn. Tuy nhiên do cùng mục tiêu là truy vấn thông tin, các chuỗi truy vần bao hàm bên trong 2 thành phần chính sau

1. Thành phần định vị

2. Thành phần lọc

Thành phần định vị :

Cho phép đặc tả “vị trí” của thông tin cần truy vấn. Kết quả của việc định vị là một tập họp con các thông tin thuộc “vị trí” đang xét.

Thành phần định vị chỉ là bước đầu tiên trong quá trình truy vấn, sau bước này thông thướng cần

Mỗi ngôn ngữ truy vần sẽ dùng một số các từ khóa riêng cho phép đặc tả thành phần này sử dụng thành phân lọc để mô tả chi tiết hơn thông tin cần truy vấn

- Ngôn ngữ truy vấn tập tin dùng từ khóa chính là các ký hiệu \ (con trực tiếp) để định vị các tập tin, thực mục cần truy vấn trong chuỗi đuờng dẫn

- Ngôn ngữ SQL dùng 2 từ khóa chính là From , Select để định vị các mẩu tin cần truy vấn

- Ngôn ngữ Xpath cho phép định theo đuờng dẫn với ký hiệu / và mở rộng với các khái niệm về trục

định vị (từ khóa descendant định vị thành phần con theo mọi cấp, từ khóa following-sibling định thành phần con là “anh/ em” của thành phần đang xét , v.v...)

Thành phần lọc :

Cho phép lọc kết quả của bước định vị với việc mô tả các tính chất của thông tin cần truy vấn thông qua biểu thức lọc

Biểu thức lọc thông dụng có dạng biểu thức logic (tương tự trong ngôn ngữ lập trình nhưng với một số giới hạn )

- Ngôn ngữ truy vấn tập tin không có ý niệm rõ nét về biểu thức lọc mà chỉ cho phép sử dụng một số

ký tự đặc biệt ( ký tự ? , ký tự * ) để mô tả chi tiết về tên ( tập tin , thự mục ) cần truy vấn

- Ngôn ngữ SQL dùng từ khoá Where kết hợp biểu thức logic để cho phép lọc các mẫu tin cần truy vấn

- Ngôn ngữ Xpath sử dụng biểu thức lọc có dạng [ Biểu thức điều kiện ] để chó phép lọc các nút cần truy vấn

* Ngôn ngữ truy vấn XPath

Một trong các ngôn ngữ truy vấn với

- Tập họp thông tin bao gồm các đối tượng của mô hình DOM

- Tập họp con thông tin : Danh sách các đối tượng của mô hình DOM

Chuoi_dinh_ví_1 Chuoi_loc_1 Chuoi_dinh_vi_2 Chuoi_loc_2 ..... Chuoi_dinh_vi_n Chuoi_loc_n

Chuoi_dinh_vi :

Cho phép xác định tập họp các nút có quan hệ ( thông dụng là con ) so với một tập họp các nút X cho trước

/AAA/BBB/CCC --- > Tập họp tất cả các nút tương ứng thẻ CCC

Là con của BBB với BBB là con của AAA , với AAA là con của gốc

//CCC ---- > Tập họp tất cả các nút tương ứng thẻ CCC

BBB/CCC --- > Tập họp tất cả các nút tương ứng thẻ CCC

Là con của BBB với BBB là con của nút ngữ cảnh

Chuoi_loc :

Có dạng sau

[ Bieu_thuc_loc

Bieu_thuc_loc là biểu thức logic cho phép xác định một tập họp con các nút của tập họp các nút

X cho trước. Tập họp con này là chính là tập họp các nút của X thỏa điều kiện trong Bieu_thuc_loc.

7d73

/AAA/BBB/CCC[@x > 5 ] --- > Tập họp tất cả nút tương ứng thẻ CCC

- Có thuộc tính x lớn hơn 5

- Là con của thẻ BBB, thẻ BBB là con của thẻ AAA, thẻ AAA là con của gốc

/AAA/BBB[@y='bbb]/CCC[@x>5] ---- > Tập họp tất cả nút tương ứng thẻ CCC

- Có thuộc tính x lớn hơn 5

- Là con của thẻ BBB với thẻ BBB

- Có giá trị thuộc tính y là 'bbb'

- Là con của thẻ AAA, thẻ AAA là con của gốc

- Ví dụ minh họa

Xét Tài liệu Xml với đặc tả DTD như sau

Ten CDATA #REQUIRED

>

Ten CDATA #REQUIRED

>

Ten CDATA #REQUIRED Si_so CDATA #REQUIRED

>

Ho_ten CDATA # REQUIRED

Gioi_tinh CDATA # REQUIRED

>

]>

Với nút ngữ cảnh là nút gốc (nút có tên là TRUONG).

Chuỗi truy vấn Xpath đặc tả tập họp các lớp có sĩ số trên 40, có dạng như sau child::KHOI/child::LOP[@Si_so>40]

Chuỗi truy vấn Xpath cho phép đặc tả tập họp con các số nguyên dương trong tài liệu XML biểu diễn thông tin về cây các số nguyên có dạng sau ( với nút ngữ cảnh là nút gốc )

descendant::SO_NGUYEN[@Gia_tri >0]

- Chuỗi định vị

Xpath cho phép định vị theo 2 cách

Cách 1 : Dùng trục định vị với tên cụ thể

Cách 2 : Dùng dạng tốc ký với các từ khóa thay thế tên trục định vị

Cách 1 là dạng cơ sở, dạng xử lý trực tiếp của các thành phần xử lý chuổi Xpath (bộ xử lý phân tích , bộ xử lý định vị, xử lý bộ lọc). Tuy nhiên cách này không cho phép mô tả một cách ngắn gọn so với cách 2

Cách 2 là cách rất thông dụng vì cho phép mô tả một cách ngắn gọn, súc tích. Tuy nhiên không phải tất cả các trục đều có từ khóa thay thế nên trong một số trường hợp nhất định cách 1 là cách duy nhất có thể sử dụng

Với tài liệu XML biểu diễn thông tin các học sinh ( DTD phía trên ) Thay vì sử dụng chuổi định vị theo cách 1

child::KHOI/child::LOP[@Si_so>40]

Có thể sử dụng dạng tốc ký trong chuỗi định vị như sau

KHOI/LOP[@Si_so>40]

Hay

/TRUONG/KHOI/LOP[@Si so>40]

Các dạng sử dụng này sẽ cho kết quả hoàn toàn trùng khớp với kết quả của dạng phía trên

Với tài liệu XML biểu diễn thông tin về biểu thức số học

Thay vì sử dụng chuổi định vị theo cách 1

descendant::SO_NGUYEN[@Gia_tri >0]

Có thể dùng dạng tốc ký

//SO_NGUYEN[@Gia_tri >0]

(Từ khóa // là dạng viết tắt cho trục descendant:: )

Dạng sử dụng này sẽ cho kết quả hoàn toàn trùng khớp với kết quả của dạng phía trên

Định vị theo tên trục

Cú pháp ( dạng thông dụng)

Chuỗi định vi theo tên trục có dạng chung sau

Ten_truc:: Ten_nut

Ý nghĩa :

Đặc tả các tập họp con các nút có tên là Ten_nut và có vị trí tương đối so với tập họp nút đang xét( kết quả trung gian) theo ý nghĩa của Ten_truc

Cho phép dùng ký tự * để mô tả một nút bất kỳ Định vị theo tốc ký

Cú pháp ( dạng thông dụng)

Chuỗi định vi theo tên trục có dạng chung sau

Tu_khoa Ten_nut

Ý nghĩa :

Đặc tả các tập họp con các nút có tên là Ten_nut và có vị trí tương đối so với tập họp nút đang xét ( kết quả trung gian) theo ý nghĩa của Ten_truc tương ứng với Tu_khoa

Tên trục Từ khóa Ghi chú
self , Ít sử dụng
child / Rất thông dụng, có thểdùng xác định nút ngữ cảnh chính là Document
parent ..
descendant // Rất thông dụng

Chuỗi lọc

Chuỗi lọc XXX[ Bieu_thuc_loc]

Cho phép đặc tả điều kiện lọc trên các thuộc tính của nút XXX đang xét

Bieu_thuc_loc có cú pháp hoàn toàn tương tự cú pháp của biểu thức điều kiện trong ngôn ngữ lập trình

if ( Biểu thức điều kiện )

{ // Các lệnh

}

với một số khác biệt mà trong đó quan trọng nhất là

Biểu thức điều kiện của ngôn ngữ lập trình bao gồm các biến

Biểu thức điều kiện của XPath bao gồm các thuộc tính ( cú pháp @Ten_thuoc_tinh )

* Minh họa trực quan XPath

Đọan videoClip minh họa trực quan việc sử dụng Xpath

Bài tập

Rèn luyện kỹ năng

* Đọc tập tin Xml

Mục tiêu :

- Tạo lập và sử dụng hàm đọc tài liệu === > Tái sử dụng cho các ứng dụng khác

- Tìm hiểu về các lỗi có thể có khi đọc

Yêu cầu :

Viết chương trình nhập vào đường dẫn của một tập tin Xml và sau đó đọc, xuất nội dung dưới dạng chuỗi của các thẻ bên trong tập tin Xml

Cần thử nghiệm với các trường hợp lỗi khác nhau

- Đường dẫn sai

- Tập tin không có cấu trúc theo định chuẩn XML

* Đọc tập tin Xml và truy vấn

Mục tiêu :

- Tìm hiểu và sử dụng một số hàm của DOM

- Sử dụng ngôn ngữ truy vấn XPath

Yêu cầu :

Viết chương trình nhập vào đường dẫn của một tập tin Xml và sau đó lần lượt thực hiện các công việc sau

a) Xuất thông tin thống kê

Tổng số các thẻ của tập tin XML Tổng số thuộc tính của tập tin XML

b) Nhập vào chuỗi Ten và cho biết có bao nhiêu thẻ trong tập tin có Ten tương ứng

* Ghi tập tin Xml

Mục tiêu :

- Tạo lập và sử dụng hàm ghi tài liệu === > Tái sử dụng cho các ứng dụng khác

- Tìm hiểu về các lỗi có thể có khi ghi

- Tìm hiểu và sử dụng một số hàm của DOM

Yêu cầu :

Viết chương trình nhập vào 2 đường dẫn tương ứng 2 tập tin Xml. Đọc 2 tập tin trên vào 2 đối tượng XmlDocument Tai_lieu_1,Tai_lieu_2 và sau đó tạo đối tượng Tai_lieu bao gồm tất cả các đối tượng của Tai_lieu_1,Tai_lieu_2. Ghi Tai_lieu vào tập tin Kq.xml

* Truy vấn và Ghi tập tin Xml

Mục tiêu :

- Tìm hiểu và sử dụng một số hàm của DOM

- Sử dụng Xpath

Yêu cầu :

Viết chương trình nhập vào đường dẫn tương ứng tập tin Xml và sau đó tạo tập tin ( ghi ) có tên

Nut_la.xml bao gồm tất cả các thẻ không chứa thẻ con của tập tin đang xét

* Thể hiện cây tổ chức trường

Mục tiêu :

Rèn luyện kỹ năng trình bày nội dung tài liệu Xml với Windows Form

Yêu cầu :

Tạo tập tin Xml biểu diễn thông tin về tổ chức của một trường ( thông tin về trường, các khối, các lớp , các học sinh )

Viết chương trình đọc và xuất các thông tin trên dưới dạng cây

* Thể hiện cây các số nguyên

Mục tiêu :

Rèn luyện kỹ năng trình bày nội dung tài liệu Xml với Windows Form

Yêu cầu :

Tạo tập tin Xml biểu diễn thông tin về cây các số nguyên

Viết chương trình đọc và xuất các thông tin trên dưới dạng cây

Xây dựng ứng dụng

* Tính tiền thuê phòng

Hệ thống thực tế

Khách sạng X có địa chỉ 123 ABC và điện thoại 333111 có bảng đơn giá thuê phòng như sau

Loại phòng Đơn giá/Ngày

Loại A 250.000

Loại B 220.000

Loại C 180.000

Đặc biệt 340.000

Nếu khách thuê quá 5 ngày được giảm 10%

Yêu cầu

Thiết kế và lập trình ứng dụng tính tiến thuê phòng với các yêu cầu chức năng như sau

1. Cập nhật thông tin về khách sạn

2. Bổ sung loại phòng mới

3. Cập nhật thông tin về loại phòng

4. Thanh lý loại phòng

5. Tính tiền thuê phòng

* Đổi ngoại tệ

Hệ thống thực tế

Cửa hàng đổi tiền X có địa chỉ 124 ABC và điện thoại 333112 có bảng tỷ giá như sau

Ngoại tệ Tỷ giá

....

....

Yêu cầu

Thiết kế và lập trình ứng dụng đổi ngoại tệ với các yêu cầu chức năng như sau

1. Cập nhật thông tin về của hàng đổi tiền

2. Bổ sung ngoại tệ mới

3. Câp nhật tỷ giá của ngoại tệ

4. Thanh lý ngoại tệ

5. Tính tiền khi đổi ngoại tệ

* Trắc nghiệm

Yêu cầu

Thiết kế và lập trình ứng dụng trắc nghiệm với các yêu cầu sau

1. Xem đề bài

2. Biên soạn câu hỏi mới

3. Cập nhật câu hỏi đã soạn

4. Xóa câu hỏi đã soạn

5. Tự rèn luyện với các câu hỏi đã soạn

- Câu hỏi trắc nghiệm chỉ bao gồm văn bản, có nhiều chọn lựa khác nhau và chỉ có duy nhất một đáp án đúng

- Với chức năng tự rèn luyện, ứng dụng phát sinh ngẫu nhiên 1 câu hỏi

* Xếp hạng bóng đá

Yêu cầu :Thiết kế và lập trình ứng dụng xếp hạng bóng đá của giải vô địch bóng đá VN với các yêu cầu sau

1. Ghi nhận kết quả các trận đấu

2. Lập bảng xếp hạng

Đây là bài tập dành cho các sinh viên tự xếp mình vào loại khá/giỏi



Nguồn: voer.edu.vn/m/mot-so-ky-thuat-lap-trinh-voi-dom/08523411


Chưa có phản hồi
Bạn vui lòng Đăng nhập để bình luận