Nội dung chính
Mã hóa ký tự (Encoding) trong XML
Encoding - Mã hóa ký tự là tiến trình chuyển đổi các ký tự Unicode thành biểu diễn nhị phân tương đương của chúng. Khi XML processor đọc một tài liệu XML, nó mã hóa tài liệu phụ thuộc vào kiểu mã hóa. Vì thế, chúng ta cần xác định kiểu mã hóa trong khai báo XML.
Kiểu mã hóa ký tự trong XML
Có hai kiểu mã hóa ký tự chính:
- UTF-8
- UTF-16
UTF là viết tắt của UCS Transformation Format, và UCS nghĩa là Universal Character Set. Các số 8 và 16 liên quan tới số bít được sử dụng để biểu diễn một ký tự. Chúng hoặc là 8 bit (một byte) hoặc 16 bit (một byte). Với các tài liệu không có thông tin mã hóa, thì UTF-8 là thiết lập mặc định.
Cú pháp XML Encoding
Kiểu mã hóa được bao trong khu vực XML Prolog của tài liệu XML. Cú pháp cho mã hóa UTF-8 là như sau:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
Cú pháp cho UTF-16 là:
<?xml version="1.0" encoding="UTF-16" standalone="no" ?>
Ví dụ XML Encoding
Ví dụ sau minh họa phần khai báo của encoding:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <contact-info> <name>Vinh Phan</name> <company>KienThucLapTrinh</company> <phone>(84) 123-4567</phone> </contact-info>
Trong ví dụ trên, encoding="UTF-8" xác định rằng 8 bit được sử dụng để biểu diễn ký tự. Để biểu diễn 16 bit, UTF-16 encoding được sử dụng.
Các XML file được mã hóa với UTF-8 có kích cỡ nhỏ hơn so với được biểu diễn trong định dạng 16 bit.