เครื่องแปลง Unicode เป็น UTF-8

แปลงข้อความ Unicode ตามตัวอักษรให้อยู่ในรูปแบบ escape \u00E9 หรือ \u{1F600} ที่ภาษาโปรแกรมฝังไว้ในซอร์สโค้ด หรือวางสตริงที่ escape แล้วถอดรหัสกลับเป็นอักขระเดิม ใช้ได้กับอักขระ BMP (escape 4 หลัก) และระนาบเสริม เช่น อีโมจิ (\u{...} ความยาวแปรผัน)

วิธีแปลงระหว่าง escape ของ Unicode และ UTF-8

  1. 1

    เลือกทิศทาง

    เข้ารหัสอักขระเป็นลำดับ escape `\u` หรือถอดรหัสสตริงที่ escape แล้วกลับเป็นข้อความ

  2. 2

    วางอินพุตของคุณ

    ข้อความธรรมดาสำหรับการเข้ารหัส; สตริงที่มีลำดับ `\uXXXX` หรือ `\u{XXXXX}` สำหรับการถอดรหัส

  3. 3

    อ่านผลลัพธ์

    อักขระ BMP สร้าง escape 4 หลักแบบ `\u0041`; อักขระที่สูงกว่า U+FFFF ใช้รูปแบบ ES6 `\u{...}`

  4. 4

    คัดลอกไปยังโค้ดของคุณ

    นำผลลัพธ์ไปวางในสตริง JavaScript, ลิเทอรัล JSON, ไฟล์กำหนดค่า หรือฟิกซ์เจอร์ทดสอบ

ไวยากรณ์ escape ข้ามภาษา

แต่ละภาษาเขียนแนวคิดเดียวกันต่างกันไป ตัวแปลงจะแสดงผลรูปแบบ JavaScript/JSON ที่พบทั่วไป แต่นี่คือรูปแบบที่คุณต้องแปลงไปใช้เมื่อเขียนอักขระเดียวกันในที่อื่น

ไวยากรณ์ escape ตามภาษา

ภาษา BMP (<= U+FFFF) เสริม (> U+FFFF)
JavaScript \u00E9 \u{1F600} (ES6+)
JSON \u00E9 คู่ตัวแทน \uD83D\uDE00
Python \u00e9 \U0001F600
Java \u00e9 คู่ตัวแทน
C / C++ \u00e9 \U0001F600
Ruby \u00e9 \u{1F600}
Rust \u{00e9} \u{1F600}
เอนทิตี HTML &#xE9; &#x1F600;
CSS \0000e9 \1F600

ทำไมอีโมจิจึงต้องใช้รูปแบบยาว

ระนาบหลายภาษาพื้นฐาน (BMP) ครอบคลุม U+0000 ถึง U+FFFF ทุกอย่างพอดีในหน่วย 16 บิตหน่วยเดียว ซึ่งเป็นสิ่งที่ไวยากรณ์เก่า \uXXXX ออกแบบมาเพื่อรองรับ อีโมจิส่วนใหญ่อยู่ในระนาบ 1 (U+1F000 ขึ้นไป) ซึ่งไม่พอดีในเลขฐานสิบหกสี่หลัก มีสองทางเลือก:

  1. วงเล็บปีกกา ES6, \u{1F600} รองรับความยาวใดก็ได้
  2. คู่ตัวแทน UTF-16, escape \uXXXX สองตัวต่อหนึ่งอักขระ ตัวแยกวิเคราะห์ JSON ยอมรับรูปแบบนี้ และเป็นสิ่งที่ตัวเข้ารหัส JSON มักสร้างออกมา

ทั้งสองถอดรหัสเป็นสตริงเดียวกัน แต่คู่ตัวแทนเปราะบาง: การตัดสตริงระหว่างตัวแทนสูงและต่ำจะได้ UTF-16 ที่ไม่ถูกต้อง

คำถามที่พบบ่อย

เลขฐานสิบหกสี่หลักสูงสุดที่ U+FFFF อีโมจิเริ่มที่ U+1F000 จึงต้องใช้รูปแบบวงเล็บปีกกา ES6 \u{...} หรือคู่ตัวแทน UTF-16 หากคุณติดอยู่กับระบบเก่า เครื่องมือนี้ใช้วงเล็บปีกกาสำหรับทุกอย่างที่สูงกว่า U+FFFF

ไม่ได้แบบเป็นคู่ ตัวถอดรหัสเข้าใจรูปแบบวงเล็บปีกกา \u{1F600} และ escape สี่หลัก \uXXXX แต่จะไม่รวมคู่ตัวแทน UTF-16 (รูปแบบสอง escape ที่ JSON ใช้) กลับเป็นอีโมจิตัวเดียว แต่ละครึ่งจะถูกถอดรหัสแยกกันและกู้คืนไม่ได้ สำหรับทุกอย่างที่สูงกว่า U+FFFF ให้วางรูปแบบวงเล็บปีกกา \u{...} ซึ่งเป็นสิ่งที่ตัวเข้ารหัสสร้างออกมาพอดี

ไม่ escape อย่าง \u00E9 แทน จุดโค้ด U+00E9 ไม่ใช่ลำดับไบต์ UTF-8 (ซึ่งจะเป็น C3 A9) หากต้องการดูไบต์ดิบ ให้ใช้เครื่องมือค้นหา Unicode ที่แสดงไบต์ UTF-8 เป็น HEX

การแปลงเกิดขึ้นที่ฝั่งเซิร์ฟเวอร์ภายในคำขอนี้ แต่ไม่มีการเก็บอะไรไว้: ไม่มีการบันทึกล็อก และไม่มีการจัดเก็บสตริงที่คุณแปลง

เครื่องมือที่เกี่ยวข้อง

ตารางอ้างอิง ASCII

ตาราง ASCII ครบตั้งแต่ 0 ถึง 127 พร้อมค่าเลขฐานสิบ ฐานสิบหก ฐานแปด ฐานสอง และรูปแบบการอ้างอิงอักขระแบบตัวเลขของ HTML รวม NUL, LF และ DEL

อ้างอิงตัวอักษร HTML

รายการที่สามารถค้นหาได้ขององค์ประกอบ HTML พร้อมรหัสชื่อและรหัสตัวเลข รวมถึงฟังก์ชันสำเนาด้วยคลิกเดียวสำหรับตัวอักษรพิเศษและสัญลักษณ์ต่างๆ

ตารางอ้างอิงแป้นพิมพ์ลัด

ค้นหาแป้นพิมพ์ลัดเริ่มต้นตามเอกสารของ VS Code, Chrome และ Bash ที่ใช้ GNU Readline บน macOS, Windows และ Linux

ตัวตรวจสอบความถูกต้องของ JSON

ตรวจสอบไวยากรณ์ JSON และตรวจจับเครื่องหมายจุลภาคต่อท้าย เครื่องหมายอัญประกาศที่ผิด คีย์ซ้ำ และโครงสร้างที่ผิดรูปแบบ พร้อมระบุตำแหน่งข้อผิดพลาดอย่างแม่นยำ

เครื่องมือปิดบังโค้ด JavaScript

เพื่อป้องกันส่วนฟรอนต์เอนด์ ให้ทำให้โค้ด JavaScript ซับซ้อนขึ้นโดยใช้วิธีการเข้ารหัสอาร์เรย์สตริง การเปลี่ยนชื่อตัวแปร การปรับโครงสร้างการไหลของควบคุมให้เรียบง่าย และการแทรกโค้ดที่ไม่จำเป็น

ตัวลดรูปพีชคณิตบูลีน

ประเมินนิพจน์บูลีนสำหรับทุกชุดอินพุตและดูตารางค่าความจริงที่สมบูรณ์ รองรับตัวแปรสูงสุดห้าตัวและตัวดำเนินการ &, |, !, ^

เครื่องมือนี้มีให้บริการในภาษาอื่น