Este artículo le brinda un código muy útil, que se puede transferir en ASP. Estos incluyen UTF8 GB2312 Código decimal binario hexadecimal.
'UTF a GB --- Convertir el texto de codificación UTF8 en texto de codificación de GB
Función UTF2GB (UTFSTR) para Dig = 1 a LEN (UTFSTR)
'Si el texto de codificación UTF8 comienza con%, se convertirá
Si Mid (UTFSTR, Dig, 1) =% entonces
'El texto de codificación UTF8 es mayor que 8, luego se convierte a caracteres chinos
Si len (UTFSTR)> = Dig+8 entonces
GBSSTR = GBSSTR & Convchinese (Mid (UTFSTR, DIG, 9))
Excavar+8
demás
GBSSTR = GBSSTR & MID (UTFSTR, DIG, 1)
final si
demás
GBSSTR = GBSSTR & MID (UTFSTR, DIG, 1)
final si
próximo
UTF2GB = GBSSTR
función final
'El texto de codificación UTF8 se convertirá en caracteres chinos
Función convchina (x)
A = Split (Mid (x, 2),%)
i = 0
J = 0
para i = 0 a Ubound (a)
A (i) = c16to2 (a (i))
próximo
para i = 0 a Ubound (a) -1
Excavos = instrerfa (a (i), 0)
Unicode =
para j = 1 a las excavaciones-1
Si J = 1 entonces
A (i) = right (a (i), len (a (i)) -digs)
Unicode = unicode & a (i)
demás
I = i+1
A (i) = right (a (i), len (a (i))-2)
Unicode = unicode & a (i)
final si
próximo
Si len (C2TO16 (unicode)) = 4 que
Convchinese = Convchinese & Chrw (int (& h & c2to16 (unicode))
demás
Convchinese = Convchinese & Chr (int (& h & c2to16 (unicode))
final si
próximo
función final
'El código binario se convierte en código hexadecimal
Función C2TO16 (x)
i = 1
para i = 1 a len (x) paso 4
C2TO16 = C2TO16 y HEX (C2TO10 (Mid (x, i, 4))))
próximo
función final
'El código binario se convierte en código decimal
Función C2TO10 (x)
C2TO10 = 0
Si x = 0 entonces salga de la función
i = 0
para i = 0 a len (x) -1
Si Mid (x, len (x) -i, 1) = 1 entonces c2to10 = c2to10+2^(i)
próximo
función final
'El código de las Escrituras se convierte en código binario
Función C16TO2 (x)
i = 0
para i = 1 a len (recorte (x))
tempttr = c10to2 (cint (int (& h & mid (x, i, 1)))
Hacer mientras Len (tempttr) <4
Tempttr = 0 & tempttr
bucle
C16TO2 = C16TO2 y TEMPRTR
próximo
función final
'El código superior se convierte en código binario
Función C10TO2 (x)
mysign = sgn (x)
x = ABS (x)
Excavaciones = 1
HACER
Si x <2^cava entonces
salir
demás
Excavaciones = excavaciones+1
final si
bucle
tempnum = x
i = 0
para i = excava a 1 paso-1
Si tempnum> = 2^(i-1) entonces
tempnum = tempnum-2^(i-1)
C10TO2 = C10TO2 y 1
demás
C10TO2 = C10TO2 y 0
final si
próximo
if mysign = -1 entonces c10to2 = -& c10to2
función final
'GB a UTF8 Convertir GB Texto de codificación al texto de codificación UTF8
Función toutf8 (szinput)
Dim WCH, UCH, SZRET
DiM X
Dim NASC, NASC2, NASC3
'Si el parámetro de entrada está vacío, la función de salida
Si szinput = entonces
Toutf8 = szinput
Función de salida
Final si
'Iniciar conversión
Para x = 1 a len (szinput)
'Use la función media para dividir el texto de codificación de GB
WCH = Mid (Szinput, X, 1)
'Use la función ASCW para devolver el código de caracteres Unicode de cada texto codificado GB
'Nota: la función ASC devuelve un código de caracteres ANSI, presta atención a la diferencia
NASC = ASCW (WCH)
Si NASC <0 entonces NASC = NASC + 65536
If (nasc y & hff80) = 0 entonces
szret = szret & wch
Demás
If (nasc y & hf000) = 0 entonces
UCH = % & HEX ((NASC / 2 ^ 6)) OR & HC0 & HEX (NASC y H3F OR & H80)
szret = szret & Uch
Demás
'El código de caracteres unicode de texto de codificación de GB se usa entre 0800 -ffff
UCH = % & HEX ((NASC / 2 ^ 12) o & HE0) & % & _
Hex ((NASC / 2 ^ 6) y & H3F o & H80) & % & _
Hex (NASC y & H3F o & H80)
szret = szret & Uch
Final si
Final si
Próximo
Toutf8 = szret
Función final
'GB a Unicode --- Convertir el texto de codificación de GB a un texto de codificación de Unicode
Función china2unicode (str)
Dim I
Dim str_one
Dim str_unicode
if (isNull (str)) entonces
función de salida
final si
para i = 1 a Len (Str)
Str_one = mid (str, i, 1)
Str_unicode = str_unicode & chr (38)
Str_unicode = str_unicode & chr (35)
Str_unicode = str_unicode & chr (120)
Str_unicode = str_unicode & hex (ascw (str_one))
Str_unicode = str_unicode & chr (59)
próximo
chino2unicode = str_unicode
función final
'URL Decoding
Función Urldecode (EnStr)
Dim Destrom
Dim C, I, V
Destrucción
para i = 1 a Len (Enstr)
C = Mid (Enstr, I, 1)
Si c =% entonces
v = eval (& h+mid (Enstr, i+1,2))
Si v <128 entonces
Destr = Destr & Chr (V)
I = i+2
demás
Si isValidhex (Mid (Enstr, i, 3)) entonces
if isValidhex (Mid (Enstr, i+3, 3)) entonces
V = Eval (& H+Mid (Enstr, i+1,2)+Mid (Enstr, i+4,2)))
Destr = Destr & Chr (V)
I = i+5
demás
V = eval (& H+Mid (Enstr, i+1,2)+CStr (hex (ASC (Mid (Enstr, i+3, 1)))))
Destr = Destr & Chr (V)
I = i+3
final si
demás
Destr = Destr & c
final si
final si
demás
Si c =+ entonces
DestR = Destr &
demás
Destr = Destr & c
final si
final si
próximo
Urldecode = destruye
función final
'Determinar si es un código hexadecimal efectivo
Función isValidhex (STR)
Dim C
IsValidhex = True
str = ucase (str)
Si len (str) <> 3 que isValidhex = false: función de salida
Si se deja (str, 1) <>%, entonces isValidhex = false: función de salida
C = Mid (STR, 2,1)
if no ((((((((((((((((((((((((((((((((((((((((((((((((a c <(c> = 0) = 9)) o ((c> = a) y (c <= z))) entonces isValidhex = false: función de salida
C = Mid (STR, 3,1)
if no ((((((((((((((((((((((((((((((((((((((((((((((((a c <(c> = 0) = 9)) o ((c> = a) y (c <= z))) entonces isValidhex = false: función de salida
función final