Convert Charecter Set To Unicode Non-Unicode UTF8 UTF16 WideChar Char16_t AnsiChar Char8_t


แปลงตัวอักษรที่อ่านไม่ได้ให้เป็นอักษรอ่านได้ ปัญหานี้เกิดขึ้นกลับหลายคน ถ้าย้อนกลับไปเปิดอ่านเอกสารหรือไฟล์เก่า เพราะระบบตัวอักษรของคอมพิวเตอร์มีการเปลี่ยนแปลงมาใช้ Encoder เป็นแบบ UNICODE UTF8 ตัวอักษรแบบเก่าที่เคยใช้จะเป็น Charector WideChar Char16_t หรือที่เราคุ้นเคยคือ( TIS-620 สำหรับภาษาไทย) กลุ่มตระกูล Widechar มีหลาย Encoder แต่ละภาษจะมี encoder เป็นของตัวเอง จึงเรียกแบบรวมๆง่ายๆว่า Non-Unicode ไปเลย

การกำหนดมาตรฐานของตัวอักษรทั่วโลกให้อยู่ในมาตรฐานเดียวกัน จึงส่งผลกระทบกับตัวอักษรในระบบเก่าคือ เมื่อนำมาเปิดจะอ่านไม่ได้ เป็นภาษาต่างดาว เพราะรูปแบบของ Encoder ไม่ตรงกัน

วิธีแก้ตัวอักษรต่างดาวที่หลายคนทำ

วิธีแก้สวนใหญ่ จะไปแก้ที่ตัวของ windows ใน Language Region โดยให้ windows ใช้กับ font ที่เป็น Non-Unicode แทน ก็ได้อย่าเสียอย่าง เราก็มาอ่านเอกสารแบบเก่าได้ แต่ก็ใช้แบบใหม่ได้ไม่เต็ม 100% และที่สำคัญเอกสารที่เราสร้างไปเปิดเครื่องอื่นไม่ได้เหมือนเดิม สำหรับคนไหนที่ใช้หลายภาษา เช่น จีน ญี่ปุ่น ต้องมานั่งแก้หลายเรื่อง

วิธีแก้ที่เหมาะสมคือการ เปลี่ยนรูปแบบตัวอักษร มาเป็น UTF8