10/10/2018, 10:03

Nên dùng UTF-8 hay dùng UTF-16

Xin chào các bạn làm web bằng tiếng việt.

Mình có vài thắc mắc về cách dùng UTF-8 và UTF-16 [hay thường gọi là Western European (ISO)hoặc Western European (windows)].

Nhân tiện mình xem bài PHP và UNICODE UTF-8 trong MySQL 4.1.x – 5.0.x của satthuhuydiet và xem trang http://manguon4u.com/

Xin hỏi các bạn thường dùng UTF-8 hay UTF-16?

Mình thường dùng UTF-8 hiển thị tiếng Việt đúng tiếng việt. Nhưng hiện nay mình đang làm trang kia, được yêu cầu dùng UTF-16 (website có 2 ngôn ngữ việt và anh nữa) không bắt người dùng phải chọn encoding=UTF-8 nên dùng UTF-16 mặc định cho người xem dễ sử dụng.

Nhưng khi làm web bằng UTF-16 thì gặp vài lỗi tiếng việt. Thí dụ

- chữ đ =>ð (Chào mừng ðến với...) như mình xem lỗi ở trang http://manguon4u.com đây.

- chữ ư =>ý

- chữ ờ =>O hai chấm ở trên.

Mình có thể filter lọc hết các chữ ở trên được nhưng thấy bất lợi quá, làm chậm đi nữa.


Mình thấy vài trang bằng tiếng việt không dùng charset utf-8 nghĩa là họ dùng utf-16 vậy xin hỏi có ai biết cách nào hiển thị tiếng việt đúng dấu mà không dùng utf-8 không?


Thanks!
vikhoa viết 12:06 ngày 10/10/2018
Nếu dùng UTF-8 thì có gì bất tiện hả bạn?

Như DDTH và hàng ngàn trang web VN khác, cả tiếng Việt lẫn tiếng Anh đều sử dụng tốt, charset tự động được browser xác định, người dùng có phải thay đổi gì đâu?
dinhbaochau viết 12:05 ngày 10/10/2018
Hình như, theo mình biết được chuẩn UTF-8 xài cho tiếng Việt mình là đủ, còn cái thằng UTF-16 là dùng cho các ngôn ngữ có độ phức tạp cao như tiếng Trung, tiếng Nhật, Hàn...., Hay các ký tự mở rộng khác của các bộ chữ mà UTF-8 không đáp ứng được.
Nhưng nếu xài Tiếng Việt và tiếng Anh thì UTF-8 là OK.
real_time viết 12:16 ngày 10/10/2018
UTF-8 thì độ dài ký tự thường ngăn hơn mình hay sử dụng iso-8559-1 để viết có điều bất tiện là độ dài ký tự thường rất lớn nếu ký tự tiếng việt thì rất dài.
killed viết 12:17 ngày 10/10/2018
Được gửi bởi lkn
Cái trang manguon4u.com là của tui, hic hic

Hổng phải do utf-16 hay utf-8 đâu, do tui chưa chỉnh font đó. He he
rồi rồi, nghe nói là biết rồi , bác chỉnh font lại đi

Theo mình thì tiếng Việt và Anh thì bạn nên dùng utf-8 đi vì nó thể hiện đúng mà lại có nhiều trang web dùng nên có gì cũng có thể support dễ hơn là chuẩn 16
dan_mien_que viết 12:15 ngày 10/10/2018
Được gửi bởi vikhoa
Nếu dùng UTF-8 thì có gì bất tiện hả bạn?

Như DDTH và hàng ngàn trang web VN khác, cả tiếng Việt lẫn tiếng Anh đều sử dụng tốt, charset tự động được browser xác định, người dùng có phải thay đổi gì đâu?
Khoa biết không tại vì cái phần coding cũ và database cũ họ đang dùng UTF-16 hay còn có gọi là charset=iso-8559-1 như bác real_time gọi đó mà.

Cái database cũ và header cũ họ dùng iso-8559-1 nên nếu mình sửa header charset utf-8 thì lại xuất hiện ngôn ngữ của thế giới bên kia! không được

Cái cũ họ dùng iso-8559-1 và cũng bị một số chữ tiếng việt không hiển thị được.

Xin hỏi những ngượi đã từng dùng iso-8559-1 thì làm sao hiển thị tiếng việt đúng dấu? Tôi thấy bên ASP họ hay dùng iso-8559-1 để làm trang bằng tiếng việt.

Thanks for all you whose reading this or reply!
happy programming too!
QuanN viết 12:14 ngày 10/10/2018
Nên dùng UTF-8.

http://vietunicode.sourceforge.net/
real_time viết 12:20 ngày 10/10/2018
Được gửi bởi dan_mien_que
Khoa biết không tại vì cái phần coding cũ và database cũ họ đang dùng UTF-16 hay còn có gọi là charset=iso-8559-1 như bác real_time gọi đó mà.

Cái database cũ và header cũ họ dùng iso-8559-1 nên nếu mình sửa header charset utf-8 thì lại xuất hiện ngôn ngữ của thế giới bên kia! không được

Cái cũ họ dùng iso-8559-1 và cũng bị một số chữ tiếng việt không hiển thị được.

Xin hỏi những ngượi đã từng dùng iso-8559-1 thì làm sao hiển thị tiếng việt đúng dấu? Tôi thấy bên ASP họ hay dùng iso-8559-1 để làm trang bằng tiếng việt.

Thanks for all you whose reading this or reply!
happy programming too!
Sử dụng coding iso-8559-1 với MySQL thì tôi chưa làm bao giờ nhưng với MS SQL thì có thể convert về định dạng Unicode NCR Decimal để hiển thị tiếng việt chuẩn.
lee_huynh306 viết 12:10 ngày 10/10/2018
Được gửi bởi real_time
Sử dụng coding iso-8559-1 với MySQL thì tôi chưa làm bao giờ nhưng với MS SQL thì có thể convert về định dạng Unicode NCR Decimal để hiển thị tiếng việt chuẩn.
Trời, mod cũng đào mộ
ngoc_viet08 viết 12:03 ngày 10/10/2018
mod này hình như cũng ở trong mộ mới ra thì phải , lâu giờ em chả biết trong box này ai là mod nữa . chắc mới ở trong ra nên kéo theo các mộ khác ra.
Bài liên quan
0