• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Asp 编码互转的研究和实现代码
    文章背景:
    某天,我的一个同事给我看了CSDN上面的一篇关于编程语言排行榜的文章,里面我看到VB还是排名很不错的,我就说,asp(vbscript)确实挺不错。结果他就反驳我,说asp不好,很多东西很难实现。我说比如哪些东西?我开发了几年的asp都没有发现很难实现的东西,除非是属于非脚本语言范围内的,比如多线程的应用(当然,asp也可以模拟实现多线程任务)等。结果他说了什么多线程,还有编码转换等,说自己曾经为了转换编码费了很大精力却没有成功过,所以觉得asp太弱。听到这样的话,我们就知道他的编程底子还不够扎实,并且对asp认识也是非常有限的(并且后来说自己asp几个常用的基本对象都不知道,也没有用过,我差点被气晕过去——连这都没有用过,还跟我谈asp很弱,看来...白长着么大了,连“没有根据,没有发言权”都不懂!呵呵...),所以,我一气之下,在那个周末就把asp编码互转的问题给实现了,让他见识见识什么是asp,竟然这么看不起asp,想着就火大!当然,我的这个研究也同时填补了到目前为止关于asp开发中编码转换研究的空白!

    现在,我们开始转入正题,首先,我们了解一下编码转换的过程,一段文字的编码如果要转换,我们就要知道当前文字所对应的编码集,然后用对应的编码集去读取,这是编码正确被转换的前提(如果这步弄错了,那么转换出来的就会是一连串乱码)!好了,找对了当前编码,并且正确读取出来了以后,我们就可以用设定好目标编码的Stream对象去保存这个内容到指定文件中了,到这里我们的编码转换就成功了!
    下面我们来看一下asp编码转换的具体代码实现:
    复制代码 代码如下:

    '转换编码 content 要转换编码的内容, cset 目标编码, dest 目标文件绝对路径
    Function TransferCharSet(content, cset, dest)
    Dim Objstream
    Set Objstream = Server.CreateObject("adodb.stream")
    objstream.Mode =3
    objstream.Charset = cset
    objstream.Type = 2
    objstream.Open
    objstream.WriteText content
    objstream.Position = 0
    objstream.SaveToFile dest,2
    objstream.Close
    set objstream = nothing
    End Function
    '用对应编码读取指定内容
    Function getcontent(path)
    Dim Objstream
    Set Objstream = Server.CreateObject("Adodb.Stream")
    objstream.Charset = GetCharSetName(path)
    objstream.Type = 2
    objstream.Mode =3
    'objstream.Charset = code
    objstream.Open
    Objstream.LoadFromFile path
    objstream.Position = 0
    getcontent = objstream.ReadText
    objstream.Close
    set objstream = nothing
    End Function
    '取得指定内容的编码名称
    Function GetCharSetName(path)
    Set objstream=server.createobject("Adodb.Stream")
    objstream.Type=1
    objstream.mode=3
    objstream.open
    objstream.Position=0
    objstream.loadfromfile path
    bintou=objstream.read(2)
    If AscB(MidB(bintou,1,1))=HEF And AscB(MidB(bintou,2,1))=HBB Then
    GetCharSetName="utf-8"
    ElseIf AscB(MidB(bintou,1,1))=HFF And AscB(MidB(bintou,2,1))=HFE Then
    GetCharSetName="unicode"
    Else
    GetCharSetName="gb2312"
    End If
    objstream.close
    Set objstream=nothing
    End Function

    好了,经过这样一段代码,我们的转换工作就完成了!希望这篇文章能给asp爱好者以及其他语言爱好者带来一些帮助和启发。
    最后,我想说的是,编程语言的学习和使用并不难,重要的是自己多动脑筋,想想自己需要的功能怎么去实现,而不是怨天尤人,说这个语言太弱了之类的话。
    好了,祝大家编程并快乐着,关于asp的编码转换先写到这里,以后我还会推出更精彩的个人原创文章,谢谢大家!
    上一篇:asp 隐藏并修改文件的最后修改时间
    下一篇:asp fckeditor自定义上传文件的文件名
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Asp 编码互转的研究和实现代码 Asp,编码,互转,的,研究,和,