Chương này sẽ giới thiệu về cả hai Interface này, nhưng trước hết, chúng ta tạo một XML file đơn giản có tên là movies.xml để làm input:
Nói chung, bạn cần tạo riêng cho mình một ContentHandler là lớp con của xml.sax.ContentHandler.
ContentHandler của bạn sẽ xử lý các tag cụ thể và các thuộc tính của XML. Một đối tượng ContentHandler cung cấp các phương thức để xử lý các sự kiện parsing khác nhau.
Phương thức startDocument và endDocument được gọi tại phần bắt đầu và phần cuối của XML file. Phương thức characters(text) để truyền dữ liệu ký tự của XML thông qua tham số text.
Đối tượng ContentHandler được gọi tại phần bắt đầu và phần cuối của mỗi phần tử. Nếu Parser không trong namespace mode, thì các phương thức startElement(tag, thuoc_tinh) và endElement(tag) được gọi; nếu không thì, các phương thức tương ứng startElementNS và endElementNS được gọi. Ở đây, tham số tag là thẻ và thuoc_tinh là một đối tượng Attributes.
Bạn tìm hiểu một số phương thức quan trọng sau để hiểu rõ tiến trình xử lý hơn:
Phương thức sau tạo một đối tượng parser mới và trả về nó. Đối tượng parser đã được tạo này sẽ là kiểu parser đầu tiên mà hệ thống tìm thấy.
xml.sax.make_parser( [parser_list] )
Tham số parser_list là tùy ý, bao gồm một danh sách các parser để sử dụng, tất cả phải triển khai phương thức make_parser.
Phương thức này tạo một SAX parser và sử dụng nó để phân tích cú pháp một tài liệu.
xml.sax.parse( xmlfile, contenthandler[, errorhandler])
Chi tiết tham số:
Phương thức này cũng dùng để tạo một SAX parser và để phân tích cú pháp XML string đã cho.
xml.sax.parseString(xmlstring, contenthandler[, errorhandler])
» Tin mới nhất:
» Các tin khác: