zoukankan      html  css  js  c++  java
  • asp不同编码下 UTF8 GB2312转换收集

    用于gb2312下接收新浪api 的json数据utf-8转gb2312

    ' UTF-8字符转换成GB2312 
    Function UTF2GB(UTFStr)
    For Dig=1 to len(UTFStr)
    if mid(UTFStr,Dig,1)="%" then
    if len(UTFStr) >= Dig+8 then
    GBStr=GBStr & ConvChinese(mid(UTFStr,Dig,9))
    Dig=Dig+8
    else
    GBStr=GBStr & mid(UTFStr,Dig,1)
    end if
    else
    GBStr=GBStr & mid(UTFStr,Dig,1)
    end if
    Next
    UTF2GB=GBStr
    End Function

    用于gb2312下api发送新浪微博中文转码

    Function toUTF8(szInput)
    
    Dim wch, uch, szRet
    
    Dim x
    
    Dim nAsc, nAsc2, nAsc3
    
    '如果输入参数为空,则退出函数
    
    If szInput = "" Then
    
    toUTF8 = szInput
    
    Exit Function
    
    End If
    
    '开始转换
    
    For x = 1 To Len(szInput)
    
    '利用mid函数分拆GB编码文字
    
    wch = Mid(szInput, x, 1)
    
    '利用ascW函数返回每一个GB编码文字的Unicode字符代码
    
    '注:asc函数返回的是ANSI 字符代码,注意区别
    
    nAsc = AscW(wch)
    
    If nAsc < 0 Then nAsc = nAsc + 65536
    
     
    
    If (nAsc And &HFF80) = 0 Then
    
    szRet = szRet & wch
    
    Else
    
    If (nAsc And &HF000) = 0 Then
    
    uch = "%" & Hex(((nAsc \ 2 ^ 6)) Or &HC0) & Hex(nAsc And &H3F Or &H80)
    
    szRet = szRet & uch
    
    Else
    
    'GB编码文字的Unicode字符代码在0800 - FFFF之间采用三字节模版
    
    uch = "%" & Hex((nAsc \ 2 ^ 12) Or &HE0) & "%" & _
    
    Hex((nAsc \ 2 ^ 6) And &H3F Or &H80) & "%" & _
    
    Hex(nAsc And &H3F Or &H80)
    
    szRet = szRet & uch
    
    End If
    
    End If
    
    Next
    
     
    
    toUTF8 = szRet
    
    End Function
  • 相关阅读:
    洛谷 P1194 飞扬的小鸟 题解
    洛谷 P1197 星球大战 题解
    洛谷 P1879 玉米田Corn Fields 题解
    洛谷 P2796 Facer的程序 题解
    洛谷 P2398 GCD SUM 题解
    洛谷 P2051 中国象棋 题解
    洛谷 P1472 奶牛家谱 Cow Pedigrees 题解
    洛谷 P1004 方格取数 题解
    洛谷 P2331 最大子矩阵 题解
    洛谷 P1073 最优贸易 题解
  • 原文地址:https://www.cnblogs.com/henshui/p/2833594.html
Copyright © 2011-2022 走看看