1. จงเขียนโปรแกรมด้วยภาษา Java
ที่สามารถอ่านไฟล์ข้อความ (text file) ซึ่งบรรจุรายชื่อโดเมนเนมต่างๆ จากนั้นให้แปลงแต่ละโดเมนเป็นรหัส Punycode หากโดเมนนั้นอยู่ในรูปแบบ Unicode และในทางกลับกัน (หากมาเป็น Punycode ให้แปลงกลับเป็น Unicode) ทั้งนี้ หากโดเมนเนมดังกล่าวไม่ใช่ IDN (เป็นภาษาอังกฤษปกติ) ให้แสดงค่าเดิมตามนั้นโดยไม่มีการเปลี่ยนแปลง แล้วจึงบันทึกผลลัพธ์โดเมนเนมทั้งหมดลงในไฟล์ .txt ไฟล์ใหม่
ในการทดสอบโปรแกรมของคุณ ให้สร้างไฟล์ .txt ขึ้นมาหนึ่งไฟล์แล้วใส่รายชื่อ IDN ชุดนี้ลงไป:
คน.ไทย
xn--42c6b.xn--o3cw4h
مقهى.البحرين
example.com
xn--mnchen-3ya.de
universal-acceptance-test.international
universal-acceptance-test.icu
(นี่คือแนวทางการแก้ไขโจทย์สำหรับแบบฝึกหัดนี้)
2. จงสร้างโปรแกรมภาษา Java อย่างง่าย
เพื่อแสดงจำลองให้เห็นว่า URL จะปรากฏแก่ผู้ใช้งานอย่างไรเมื่ออยู่บนเบราว์เซอร์ (ในรูปแบบ Unicode) และจะปรากฏอย่างไรเมื่อถูกส่งไปสืบค้นในระบบ DNS (ในรูปแบบ Punycode)
ตัวอย่างการทำงาน (Examples):
-
ตัวอย่างที่ 1:
-
ป้อนโดเมน (Enter domain): xn--42c6b.xn--o3cw4h
-
แสดงผลแก่ผู้ใช้ (Display to user): คน.ไทย
-
การสืบค้น DNS (DNS query): xn--42c6b.xn--o3cw4h
-
ตัวอย่างที่ 2:
-
ป้อนโดเมน (Enter domain): คนไทย.ไทย
-
แสดงผลแก่ผู้ใช้ (Display to user): คนไทย.ไทย
-
การสืบค้น DNS (DNS query): xn--42c6b.xn--o3cw4h
-
ตัวอย่างที่ 3:
-
ป้อนโดเมน (Enter domain): kıon.in.th
-
แสดงผลแก่ผู้ใช้ (Display to user): kıon.in.th
-
การสืบค้น DNS (DNS query): xn--kon-jua.in.th
(นี่คือแนวทางการแก้ไขโจทย์สำหรับแบบฝึกหัดนี้)