Nội bộ hóa Java - Lớp ngôn ngữ

Một đối tượng lớp Locale đại diện cho một khu vực địa lý / chính trị / văn hóa cụ thể. Bất kỳ hoạt động nào yêu cầu Ngôn ngữ thực hiện nhiệm vụ của nó được gọi là hoạt động nhạy cảm với ngôn ngữ và sử dụng Ngôn ngữ để nắm vững thông tin liên quan đến người dùng. Ví dụ: hiển thị một số là một hoạt động nhạy cảm với ngôn ngữ. Số phải được định dạng theo phong tục và quy ước của quốc gia, khu vực hoặc văn hóa bản địa của người dùng.

Nội dung ngôn ngữ

Một đối tượng Locale chứa những điều sau:

  • Language- ISO 639 mã ngôn ngữ alpha-2 hoặc alpha-3, hoặc ngôn ngữ đã đăng ký gắn thẻ phụ lên đến 8 chữ cái alpha. Mã alpha-2 phải được sử dụng nếu có cả mã alpha-2 và alpha-3. Trường ngôn ngữ không phân biệt chữ hoa chữ thường, nhưng Ngôn ngữ luôn chuẩn hóa thành chữ thường.

  • Script- Mã tập lệnh ISO 15924 alpha-4. Trường script không phân biệt chữ hoa chữ thường, nhưng Locale luôn chuẩn hóa thành chữ hoa tiêu đề.

  • Country (region)- Mã quốc gia ISO 3166 alpha-2 hoặc mã vùng UN M.49 số-3. Trường quốc gia không phân biệt chữ hoa chữ thường, nhưng Ngôn ngữ luôn chuẩn hóa thành chữ hoa.

  • Variant- Bất kỳ giá trị tùy ý nào được sử dụng để chỉ ra một biến thể của Ngôn ngữ. Trong trường hợp có hai hoặc nhiều giá trị biến thể, mỗi giá trị chỉ ra ngữ nghĩa riêng của nó, các giá trị này phải được sắp xếp theo mức độ quan trọng, quan trọng nhất trước, được phân tách bằng dấu gạch dưới ('_'). Trường biến thể phân biệt chữ hoa chữ thường.

  • Extensions- Một bản đồ từ các phím ký tự đơn đến các giá trị chuỗi, chỉ ra các phần mở rộng ngoài nhận dạng ngôn ngữ. Các phần mở rộng trong Ngôn ngữ thực hiện ngữ nghĩa và cú pháp của thẻ phụ mở rộng BCP 47 và thẻ phụ sử dụng riêng. Các tiện ích mở rộng không phân biệt chữ hoa chữ thường, nhưng Locale chuẩn hóa tất cả các khóa và giá trị của tiện ích mở rộng thành chữ thường.

In