看板 Visual_Basic 關於我們 聯絡資訊
※ 引述《finaldeath (<( ̄口 ̄)_且)》之銘言: : A,B為英文字長度應為1 : 國為中文字長度應為2 : 但結果看起來是中英文字長度都變成2了 : : 請問是我理解錯誤嗎? : 還是我有哪邊設定錯誤了。 : : 謝謝大家! : : → KawasumiMai:你的AB兩字是全形嗎? 06/17 18:52 跟全形沒關係。原po可以試跑以下測試程式看看結果。 Sub leftbtest_host() ss = leftbtest("Bolshevik") ss = ss & leftbtest("AB漢字") MsgBox ss End Sub Function leftbtest(s) As String ss = "" k = 2 For i = 0 To LenB(s) Step k c = LeftB(s, i) ss = ss & "[" & i & "]: " & c & vbCrLf Next i leftbtest = ss End Function 如果這樣可以輸出看起來正常的結果(人看得懂),可以把k改為1或3看看。   -- 從前有個馬鈴薯王國 有個高貴偉大的國王 有的人尊敬他 有的人畏懼他 但有個人敢看不起他不只是一條龍 嘿呵 快出動 去征服 去擺平 嘿呵 快出征 去征服那條龍 嘿呵 快出動(宰了它!轟了它!)嘿呵 快出征 去征服那條龍 :■ Potatoes and Dragons (C)Alphanim France 2004-05 :. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.116.43.189 ※ 文章網址: http://www.ptt.cc/bbs/Visual_Basic/M.1403002970.A.386.html
finaldeath:結果跑起來英文字真的被當成長度2 06/18 10:13
finaldeath:用奇數跑,英文字會被截成亂碼... 06/18 10:13
EShensh:可能 Windows 系統核心不同吧,早期的 Win 不是 Unicode 06/19 15:06
EShensh:所以不建議這樣的寫法,應該要確認要處理編碼比較好。 06/19 15:07
EShensh:不然在不同環境可能出來的結果不一樣。 06/19 15:07
MOONRAKER:UTF-16就是unicode, 原汁原味,哪有什麼不是unicode的 06/20 00:19
MOONRAKER:問題。這一個problem果然釣出各式各樣的「好手」,科 06/20 00:21