Công cụ cho lập trình viên

Văn bản sang nhị phân

Chuyển văn bản sang nhị phân, hex, bát phân hoặc thập phân — và ngược lại.

Văn bản sang nhị phân Chạy trên thiết bị của bạn
  • Chạy ngay trên trình duyệt của bạn — văn bản của bạn không bao giờ được gửi đi đâu cả
  • Không cần đăng ký, không có hạn mức, dùng miễn phí bao nhiêu lần tùy thích

Cách hoạt động

Chuyển văn bản thành các con số bên dưới nó xuất hiện trong các câu đố, giảng dạy, gỡ lỗi và công việc về giao thức. Chi tiết khiến nhiều người vấp là với máy tính, văn bản không phải là ký tự — nó là byte, và byte nào thì tùy thuộc vào bảng mã.

UTF-8, điều thực sự quan trọng

Văn bản được mã hóa thành byte UTF-8 trước khi chuyển đổi. Ký tự tiếng Anh thông thường mỗi ký tự một byte, nên kết quả trông giống hệt bảng ASCII mà hầu hết hướng dẫn dùng. Chữ có dấu chiếm hai byte và emoji chiếm bốn — nên số byte và số ký tự khác nhau, và cả hai đều được hiển thị.

Nhóm

Nhị phân được đệm thành tám chữ số mỗi byte, hex thành hai, bát phân thành ba, với một dấu cách giữa các byte. Cách nhóm đó làm kết quả dễ đọc và cho phép giải mã lại không nhập nhằng.

Giải mã ngược lại

Dán các nhóm số cách nhau bằng dấu cách và chúng được đọc lại thành byte rồi giải mã dưới dạng UTF-8. Bất kỳ nhóm nào ngoài khoảng 0–255, hoặc chuỗi không phải UTF-8 hợp lệ, đều được báo thay vì âm thầm tạo ra kết quả vô nghĩa.

Nên chọn hệ cơ số nào

Nhị phân là điều mọi người muốn nói khi nói “văn bản sang nhị phân”. Hex gọn hơn nhiều và là thứ bạn sẽ thấy trong trình soạn thảo hex hoặc bản kết xuất giao thức. Bát phân chủ yếu mang tính lịch sử. Thập phân dễ đọc to nhất.

Câu hỏi thường gặp

Văn bản sang nhị phân — câu hỏi thường gặp

Vì sao emoji của tôi cho ra bốn số?

Emoji chiếm bốn byte trong UTF-8. Cả số byte và số ký tự đều được hiển thị.

Nó có chuyển nhị phân ngược lại thành văn bản được không?

Có. Dán các nhóm cách nhau bằng dấu cách và nó sẽ giải mã.

Vì sao nó báo byte của tôi không phải UTF-8 hợp lệ?

Các số không tạo thành một chuỗi ký tự hợp lệ — thường là thiếu hoặc thừa một nhóm.