→ TonyQ:在提醒一下 這個esc是 chr(27) 可以對照ASCII表 11/26 19:14
※ 編輯: TonyQ 來自: 220.132.59.247 (11/26 19:17)
※ 引述《ptthuey (天秤守望者)》之銘言:
: 因為最近要做的東西需要分析到BBS上的ASCII美工,
: 我想要把文字跟效果方面分開取出。
: 不過網路上似乎沒有什麼可以用的工具,所以打算自己寫這部分
: 但現在遇到編碼的問題,例如下面的情況
: 光
: 如果是用PCMan的彩色複製,
: 再貼到自己寫的GUI中的TextArea就會變成亂碼。
: 從GUI再貼回BBS也是亂碼。
: 我想這應該是跟PTT使用ASCII,而OS是用UNICODE有關吧
: 要如何讓TextArea的部分能夠處理這問題?
: 另外就是單雙字元組的問題,目前是打算用最基本的方法,
: 一個個Byte慢慢讀取,然後判斷是控制碼還是文字再來處理,
: 不過因為中文是雙位元組,要如何判斷是中文呢?
碰到esc的時候就先停住 碰到m的時候開始
這是最簡單的方式
這跟亂碼本身沒有關係,你想想看如果有個字兩個三個byte,
中間被插進(esc)[xxxm 當然是無法呈現的,除非用純byte去看。
因為沒辦法"完整的文字"可以解碼, 它就誤讀了。
bbs的控制碼說穿的就是脱逸字元的概念,
顏色方便都是用esc(BBS上 非ANSI模式顯示成*號但是並不是真的star)
--
▄▅▆▇███▇▆▅▄▃ ╰┼╯─╮ ╮
◥███████████◣ ╰┼╯=│=│
◥██████───────◣ *. ╯ ╯ ╯ の 物 語 .*
◥███████──────◣ ~ ◢◣ ◢◣
◥██████───────◤ ◥◤* 空白的世界.翼 *◥◤
◥██▁▂▃▄▅▆▇███▆▅▄▃▂▂~telnet://tony1223.no-ip.info
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.132.59.247