äžã«è²ã
ãã£ãŠã¿ããã§ããã©ãæ¥æ¬èªãæ±ãã®ãéåžžã«é£ãããšèšã
ã®ã ãã¯çè§£ã§ããŸãã (^^;;;
ãŸã lua èªäœ utf ã§ã®æ±ããèŠæããããstring ç³»ã®é¢æ°ããã®ãŸãŸå©çšãã
ã®ã¯äžå¯èœã§ããããsetlocale ãªã©ãè§Šããç°¡æå©çšã¯é§ç®ã
æåãšã³ã³ãŒãç³»ã®ããã±ãŒãžã¯ïŒ£èšèªããèŠåœãããé§ç®ã
ç¡çç¢çãå¿
èŠãªéšåã ãutf è§£éã lua ã§èšè¿°ãã ããŠã¿ããã®ã®ãããã
æŒç®åãç¡ãããæ¬äœ lua ã«æã bit ããã±ãŒãžã䜿ããªãã®ã§ãã¡ãŸã¡ãŸãš
if æã®åºãŸããšæ ŒéããŠããŠããããããããã£ãŠæãã§ã (>o<)/
ãããŠãæ¬äœ lua ã«æãã©ã€ãã©ãªã¯äœ¿ããããã ã£ãŠçç¡ããŠå°ã£ãŠäœã£
ãããã±ãŒãžãå€ãã¯ããªãã§ãã
ã§ããã§ããã°Cèšèªæ¡åŒµããã®ããã€ã³ã¿ãŒããªã¿ã§ãæ§ããªãã§ããã
(æè¿ã¿ãŸãããã€ã³ã¿ããªã¿w)ãlua ãäžåŸæãšããéšåã ansca ãæã
åã£ãŠããªãéšåã«é¢ããŠãæ©èœæ¡åŒµãããŠè²°ããªãããªããšåŒ·ã匷ãèŠæ
ãããïŒ o(>Q<)o
utf-8ã§æååæäœãããŠãããããŸããããªããšããããšã§ããããïŒ
"socket.url"ã"url.escape"ããã®å Žåæ£ããåããªãå ŽåããããããªçŸè±¡
ãšãªããŸããã
-- Function for URLencoding of message content
function escape (s)
ããs = string.gsub(s, "([&=+%c])", function (c)
ããreturn string.format("%%%02X", string.byte(c))
ããend)
ããs = string.gsub(s, " ", "+")
ããreturn s
end
utf-8ã倿ããŠãããšããã©ãŒã©ã ã®èšäºããããŸããã
åé¿çã«ã¯ãªããªãã®ã§ããããã
http://developer.anscamobile.com/code/utf-8-conversion-utility
lua (albeit being UTF-8 compliant) primarily expects 8-bit ASCII only
以äž
äŸãã°åçŽã«æ¥æ¬èªæååããïŒæåã¥ã€åãåºããããšããPHPãªã©ã§ã
è³æ¥µç°¡åãªæäœãããããããšããã ããªã®ã§ããâŠ
ææªæ¥æ¬èªæåã¯å
šãŠæã§æžããŠããŸãã°ãšãæã£ãŠããã®ã§ãããgmatch
ãªã©ã§å©çšãããŠããæ£èŠè¡šçŸã¯ utf8 æåã§ã¯ãªã byte åäœã«èªèããŠãã
ããïŒãã±ãŒã«èšå®å€ããŠã¿ããããšæã£ãã setlocale èªäœããªãã£ãïŒã
string ã§å©çšãããŠããæ£èŠè¡šçŸã¯åçŽæåè¡šçŸæ¢ãŸãã§ | (or)ãªã©ã®è¡šçŸã
èš±ããŠãããªãçºã«ãå¥éïŒbyteã¥ã€åãåºããŠå å·¥ãå¿
é ãªæ§ã§ãã
ããŸãã«ãbyte ãªãŒãã§åãåºããããŒã¿ããããæŒç®ããããšããããã
ãæŒç®åãç¡ãäºã«å§ããŠæ°ãã€ããŠå ããŠããŸã£ããš (^^;;
ãããªããšãããªãã®æéã²ãŸã§ã埡玹ä»é ãããã©ãŒã©ã ã®ãã㪠UTF8
ã®ãšã³ã³ãŒãã£ã³ã°ãæ¥æ¬èªã§ããããšãããšãããªãåæãå¿
èŠã«ãªããŸ
ãã®ã§ãåºæ¥ãã°æããã®äœ¿ããããªãšèšãã®ã宿ã§ãã
åºæ¥ãã°èšèªæ¡åŒµããããªãšèšãæ³ãã匷ãåçããŠãã®ã§ããããã¯ãç
ãå¿
èŠãªããã±ãŒãžã lua ã§æžãçŽãã£ãŠäºãªãã§ããããïŒ
ãŸã å
šç¶ã§ããŠãŸããããåçŽãªæååãåºããªãã㯠module ã«ããŠã¿ãŠ
ãŸãã®ã§ãåŸã§äœåŠãã«ã¢ãããããŠé ããããšæããŸãïŒåèçšåºŠïŒã
çŸç¶ãå
šåè§ãã§ãã¯äœã£ãŠãæã§ã¡ã²ãŠããšããã§ãw
å®ã¯åã Corona ãšèšããã Lua 奜ãã«ãªã£ãŠããŸããŸããŠw
ãããŸã§ãéã³ã§ãã iOS äžã«æ¬å®¶LuaãèŒãããã£ãŠãŸãã
å±±æ¬ããåž°åœãããŠããã®è¯ãããªè©±ãããªããããªã®ã§æ¬
æ°ã«ãªã£ã¡ãããããªæ°ãããŠããã®ã§ãã (^o^;;;
ã§ã coros2d-x ã® corona ã©ãããŒã£ãŠã©ãèšãæãã§ããïŒ
cocos2d-x ã lua ã©ã€ã¯ã«ããã£ãŠäºã§ããïŒ