回覆列表
  • 1 # 何以笙丶丶

    字串存入資料庫時,其所需位元組數與字串中的字元數是不一定一致的,ASCII字元佔用一個位元組,而漢字需要兩個位元組。下面的函式可以準確計算字串存入資料庫(資料型別為VARCHAR)時的實際長度。

    祝你好運!

    ========================================================

    "計算字串轉換為GB2312編碼後的位元組數

    FunctionCountStringBytes(ByValstrAsString)AsLong

    Dimb()AsByte

    DimcountAsLong"計數器

    DimiAsLong"迴圈變數

    b=str:count=0

    Fori=LBound(b)+1ToUBound(b)Step2

    Ifb(i)<>0Then"雙位元組字元,需要使用兩個位元組

    count=count+2

    Else

    Ifb(i-1)<=127Then"ASCII字元,只需用一個位元組

    count=count+1

    Else

    count=count+2"擴充套件字元,需要佔用兩個位元組

    EndIf

    EndIf

    Next

    CountStringBytes=count

    EndFunction

  • 中秋節和大豐收的關聯?
  • 如何為此圖賦一首詩?