คลังเก็บบล็อก
iPhone: Send Thai Language to Web Service using stringByAddingPercentEscapesUsingEncoding
Send Thai Language to Web Service using stringByAddingPercentEscapesUsingEncoding
หากเพื่อนส่งข้อมูลภาษาไทยไปยังเว็บเซอร์วิสไม่ได้ลองเปลี่ยนข้อมูลนั้นเป็น %UTF8 สิครับ จะช่วยแก้ไขปัญหานี้ได้
NSString *encStr = [urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
การเปลี่ยนตัวอักขระพิเศษให้เป็นแบบ UTF8 นั้นมีข้อดีในเรื่องการส่งข้อมูลผ่านเน็ตเวิร์คไปยังเว็บเซอร์วิสครับ หากใครติดปัญหาเรื่องส่ง ภาษาไทย เข้า url ของเว็บเซอร์วิสไม่ได้ลอง แปลงข้อมูลเป็น % UTF8 ดูครับ
ตัวอย่าง
1) http://adaydesign.com/ebd/WebDriver?ACT=LoginSave&UserName=adaydesign& Passwd=ภาษาไทย&Format=xml 2) http://adaydesign.com/ebd/WebDriver?ACT=LoginSave&UserName=adaydesign& Passwd=%E0%B8%A0%E0%B8%B2%E0%B8%A9%E0%B8%B2%E0%B9%84%E0%B8%97%E0%B8%A2&Format=xml
iPhone: stringByAddingPercentEscapesUsingEncoding
stringByAddingPercentEscapesUsingEncoding
ตะกี้หาวิธีเพิ่ม %20 ใส่วรรค สำหรับเอาไปใช้ในการผ่านค่าบน url และแล้วก้อ หาเจอ stringByAddingPercentEscapesUsingEncoding ใช้ได้จริงๆ ด้วย ตัวอย่างการใช้
NSString *encStr = [urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
urlStr จะเป็น String ที่ยังไม่เพิ่ม % เข้าไป
encStr คือผลลัพธ์ String ที่ถูกเพิ่ม % สำหรับอักขระพิเศษและช่องว่าง
ภาพประกอบ
Ref: http://th.w3support.net/index.php?db=so&id=917409
adaydesign :)