6
ฉันจะแปลงสตริงเป็น UTF-8 ใน C # ได้อย่างไร
ฉันมีสตริงที่ฉันได้รับจากแอพของบุคคลที่สามและฉันต้องการแสดงอย่างถูกต้องในภาษาใด ๆ โดยใช้ C # บน Windows Surface ของฉัน เนื่องจากการเข้ารหัสที่ไม่ถูกต้องส่วนหนึ่งของสตริงของฉันมีลักษณะเช่นนี้ในภาษาสเปน: Acción ในขณะที่ควรมีลักษณะเช่นนี้: Acción ตามคำตอบของคำถามนี้: จะรู้ได้อย่างไรว่าการเข้ารหัสสตริงใน C #การเข้ารหัสที่ฉันได้รับควรมาที่ UTF-8 แล้ว แต่มันถูกอ่านใน Encoding.Default (อาจเป็น ANSI) ฉันกำลังพยายามแปลงสตริงนี้เป็น UTF-8 จริง แต่ปัญหาอย่างหนึ่งคือฉันเห็นเฉพาะเซ็ตย่อยของคลาสการเข้ารหัส (คุณสมบัติ UTF8 และ Unicode เท่านั้น) อาจเป็นเพราะฉัน จำกัด Windows window API เท่านั้น ฉันลองใช้ตัวอย่างบางส่วนที่ฉันพบบนอินเทอร์เน็ต แต่ก็ไม่มีสิ่งใดที่พิสูจน์แล้วว่าประสบความสำเร็จสำหรับภาษาตะวันออก (เช่นภาษาเกาหลี) ตัวอย่างหนึ่งมีดังนี้: var utf8 = Encoding.UTF8; byte[] utfBytes = utf8.GetBytes(myString); …