看板 Visual_Basic 關於我們 聯絡資訊
大家好。 我使用VB6內的LeftB擷取時卻發生以下問題。 LeftB("AB國字", 4) 只會取得 AB,而非我原本預想的 AB國 A,B為英文字長度應為1 為中文字長度應為2 但結果看起來是中英文字長度都變成2了 請問是我理解錯誤嗎? 還是我有哪邊設定錯誤了。 謝謝大家! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.120.36.106 ※ 文章網址: http://www.ptt.cc/bbs/Visual_Basic/M.1402999417.A.90B.html
KawasumiMai:你的AB兩字是全形嗎? 06/17 18:52
chinoyan:LEFT 無視中英比為長度1,LEFTB或LENB,有B的半型英數為1 06/17 21:48
chinoyan:中文為2 06/17 21:49
MOONRAKER:就原po以上得到的結果而言,很明顯並非如此。 06/17 21:59
*****先感謝大家回覆,我可以確定我打的是半形,就如文章內一樣,我原本預想的 結果應如chinoyan所說的一樣,但實際跑出來結果確如MOONRAKER所說的,並不 是英數字變為長度1,我在網路上有查到有人說VB 自32位元開始,英文改為長 度 2,不知道為什麼會這樣修改就是了。
MOONRAKER:大概是統統改為UTF-16,所有字元都用16 bits表示。 06/18 10:39
MOONRAKER:這是早期的Unicode規範,但是現在大家都前進到UTF-8了 06/18 10:40
*****太感謝MOONRAKER陪我在那邊測試 ※ 編輯: finaldeath (59.120.36.106), 06/18/2014 10:59:55