บทความนี้จะมาสอนวิธีการแปลง encode โดยใช้ ICONV ในตัวอย่างจะใช้การแปลง Encode ภาษาญี่ปุ่น Encode Shift js เป็น UTF-8 ซึ่งตัวอย่างนี้จะทำบน Windows โดยใช้ LibIconv for Windows
ก่อนอื่นให้เราไปโหลด LibIconv for Windows http://gnuwin32.sourceforge.net/packages/libiconv.htm
เลือก Download • Complete package, except sources
หรือกด Link นี้ http://gnuwin32.sourceforge.net/downlinks/libiconv.php
ทำการติดตั้งตามปกติเสร็จแล้วก็ Restart เครื่อง แล้วทดสอบว่า iconv ใช้งานได้ไหมโดยการเช็คจาก version
ถ้าใช้งานได้ก็ทำขั้นตอนถัดไปนั้นก็คือเริ่มทำการแปลงได้เลย
ตัวอย่างจะเป็นการแปลงไฟล์ test.txt ที่ encode Shift js ไป UTF-8 หลังแปลงแล้วเป็นไฟล์ test2.txt เราสามารถใช้คำสั่งว่า
iconv -f SHIFT_JIS -t UTF-8 test.txt > test2.txt
ซึ่ง สามารถเอาไปใช้กับนามสกุลอื่นก็ได้เช่นไฟล์ code ของเรา .h
iconv -f SHIFT_JIS -t UTF-8 typedef.h > typedef2.h
ตัวอย่างก่อนแปลงเปิดดูใน encode UTF-8 จะเห็นว่าตรง comment อ่านไม่ออกเลยขึ้นเป็นภาษาต่างด้าว
ถ้าเปิดดูใน encode Shift js ก็จะอ่านคันจิออก
หลังแปลงแล้วก็จะได้ไฟล์ typedef2.h เปิดดูใน UTF-8 ก็เห็นว่าอ่านได้แล้วตรงกับต้นฉบับใน Shift js เลย
แต่ข้อควรระวังก็คือใน UTF-8 อาจจะไม่มีคันจิบางตัวอักษร ทำให้อ่านไม่ออกได้เหมือนกัน ซึ่งเพื่อนๆสามารถประยุกต์ใช้งาน ICONV กับ Encode อื่นๆได้ในลักษณะเดียวกัน รวมไปถึงประยุกต์ใช้งานในการแปลง Encode หลายๆไฟล์หรือทั้ง Folder โดยนำ ICONV ไปใช้งานร่วมกับ Scrip ต่างๆได้ โดย Document ฉบับเต็ม และ encode อื่นๆที่ ICONV support สามารถเช็คได้ที่นี้ http://www.gnu.org/software/libiconv/