1. จงเขียนโปรแกรมด้วยภาษา Java
ที่สามารถอ่านไฟล์ข้อความ (text file) ซึ่งบรรจุรายชื่อโดเมนเนมต่างๆ จากนั้นให้แปลงแต่ละโดเมนเป็นรหัส Punycode หากโดเมนนั้นอยู่ในรูปแบบ Unicode และในทางกลับกัน (หากมาเป็น Punycode ให้แปลงกลับเป็น Unicode) ทั้งนี้ หากโดเมนเนมดังกล่าวไม่ใช่ IDN (เป็นภาษาอังกฤษปกติ) ให้แสดงค่าเดิมตามนั้นโดยไม่มีการเปลี่ยนแปลง แล้วจึงบันทึกผลลัพธ์โดเมนเนมทั้งหมดลงในไฟล์ .txt ไฟล์ใหม่
ในการทดสอบโปรแกรมของคุณ ให้สร้างไฟล์ .txt ขึ้นมาหนึ่งไฟล์แล้วใส่รายชื่อ IDN ชุดนี้ลงไป:
مقهى.البحرين
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--ehbfhi.xn--mgbcpq6gpa1a
-
แสดงผลแก่ผู้ใช้ (Display to user): مقهى.البحرين
-
การสืบค้น DNS (DNS query): xn--ehbfhi.xn--mgbcpq6gpa1a
-
ตัวอย่างที่ 2:
-
ป้อนโดเมน (Enter domain): münchen.de
-
แสดงผลแก่ผู้ใช้ (Display to user): münchen.de
-
การสืบค้น DNS (DNS query): xn--mnchen-3ya.de
-
ตัวอย่างที่ 3:
-
ป้อนโดเมน (Enter domain): bıss.social
-
แสดงผลแก่ผู้ใช้ (Display to user): bıss.social
-
การสืบค้น DNS (DNS query): xn--bss-jua.social
(นี่คือแนวทางการแก้ไขโจทย์สำหรับแบบฝึกหัดนี้)