'-------------------------------------------------
'函数名称:gb2utf_file
'作用:利用AdoDb.Stream对象来把GB2312格式文本文件转换成UTF-8格式
'----------------------------------------------------
Function gb2utf_file(utffilename)
Dim gb2utf_1,gb2utf_2,gb2utf_array,gb2utf_i
gb2utf_1=LoadFile(utffilename,"GB2312")
gb2utf_array=Split(gb2utf_1,Chr(13)&chr(10))
If InStr(Ucase(gb2utf_array(0)),"LANGUAGE=")>0 and InStr(Ucase(gb2utf_array(0)),"CODEPAGE=")>0 and InStr(Ucase(gb2utf_array(0)),"936")>0 Then
gb2utf_array(0)="<%@LANGUAGE=""VBSCRIPT"" CODEPAGE=""65001""%"&">"
End If
For gb2utf_i=0 To UBound(gb2utf_array)
if InStr(Lcase(gb2utf_array(gb2utf_i)),"http-equiv=")>0 and InStr(Lcase(gb2utf_array(gb2utf_i)),"content-type")>0 and InStr(Lcase(gb2utf_array(gb2utf_i)),"content=")>0 and InStr(Lcase(gb2utf_array(gb2utf_i)),"text/html;")>0 and InStr(Lcase(gb2utf_array(gb2utf_i)),"charset=gb2312")>0 Then
gb2utf_array(gb2utf_i)="<meta http-equiv=""Content-Type"" content=""text/html; charset=utf-8"">"
End if
gb2utf_2=gb2utf_2&gb2utf_array(gb2utf_i)&Chr(13)&chr(10)
Next
SaveToFile gb2utf_2,utffilename,"UTF-8"
End Function
'-------------------------------------------------
'函数名称:LoadFile
'作用:利用AdoDb.Stream对象来读取文本文件
'Charset参数为文本格式:UTF-8格式或GB2312格式
'----------------------------------------------------
Function LoadFile(ByVal File,Charset)
       Dim objStream
       On Error Resume Next
       Set objStream = Server.CreateObject("ADODB.Stream")
       If Err.Number=-2147221005 Then
           Response.Write "<div align='center'>非常遗憾,您的主机不支持ADODB.Stream,不能使用本程序</div>"
           Err.Clear
           Response.End
       End If
       With objStream
           .Type = 2
           .Mode = 3
           .Open
           .LoadFromFile Server.MapPath(File)
           If Err.Number<>0 Then
       Response.Write "<div align='center'>文件<font color='#ff0000'>"&File&"</font>无法被打开,请检查是否存在!</font></div>"
       Err.Clear
       Response.End
           End If
           .Charset = Charset
           .Position = 2
           LoadFile = .ReadText
           .Close
       End With
       Set objStream = Nothing
End Function
'-------------------------------------------------
'函数名称:SaveToFile
'作用:利用AdoDb.Stream对象来存储文本文件
'Charset参数为文本格式:UTF-8格式或GB2312格式
'----------------------------------------------------
Sub SaveToFile(ByVal strBody,ByVal File,Charset)
       Dim objStream
       On Error Resume Next
       Set objStream = Server.CreateObject("ADODB.Stream")
       If Err.Number=-2147221005 Then
           Response.Write "<div align='center'>非常遗憾,您的主机不支持ADODB.Stream,不能使用本程序</div>"
           Err.Clear
           Response.End
       End If
       With objStream
           .Type = 2
           .Open
           .Charset = Charset
           .Position = objStream.Size
           .WriteText = strBody
           .SaveToFile Server.MapPath(File),2
           .Close
       End With
       Set objStream = Nothing
End Sub

ASP:GB2312格式文本文件转换成UTF-8格式的更多相关文章

  1. [转] 将DOS格式文本文件转换成UNIX格式

    点击此处阅读原文 用途说明 dos2unix命令用来将DOS格式的文本文件转换成UNIX格式的(DOS/MAC to UNIX text file format converter).DOS下的文本文 ...

  2. ASP.Net中实现上传过程中将文本文件转换成PDF的方法

    iTextSharp是一个常用的PDF库,我们可以使用它来创建.修改PDF文件或对PDF文件进行一些其他额外的操作.本文讲述了如何在上传过程中将文本文件转换成PDF的方法. 基本工作 在开始之前,我们 ...

  3. dos2unix命令 – 将DOS格式的文本文件转换成UNIX格式

    今天做题的时候,出现了个很冷门的: 查找子目录src下所有后缀为.txt的文件执行dos2unix命令,把文件从Dos格式转换为Linux格式,正确的命令是:find src "*.txt& ...

  4. Java将其他数据格式转换成json字符串格式

    package com.wangbo.util; import java.beans.IntrospectionException; import java.beans.Introspector; i ...

  5. Oracle 如何将“26-9月 -17 06.46.00.000000000 下午”字符串转换成标准日期格式

    今天,在读取日期格式数据时,出现这样的格式“26-9月 -17 06.46.00.000000000 下午”,在网上找了一下, 这个也是oracle的一种日期保存格式,数据都是日期类型,只是显示的结果 ...

  6. 将psd格式批量转换成jpg或png格式(C#自制软件)

    此项目基于.net framework 4.0 将psd格式批量转换成jpg或png格式. 链接:https://pan.baidu.com/s/16IEjX0sHaY9H3Ah7mv6IPQ 提取码 ...

  7. RSA的密钥把JAVA格式转换成C#的格式(2)

    把C#格式转换成Java:RSA的密钥把JAVA格式转换成C#的格式(1) 我已经在第一篇介绍过如何把C#格式转换成Java,现在来看看如何把Java格式转换成C#. /// <summary& ...

  8. Java之格林威治时间格式转换成北京时间格式

    Java之格林威治时间格式转换成北京时间格式 package com.mtons.mblog; import java.text.ParseException; import java.text.Si ...

  9. pdf转换成文本解决格式不统一问题

    pdf转换成文本解决格式不统一问题 懒得调OCR服务了,所以快速解决的方法是: pdf转png:https://pdf2png.com/zh/ png转统一格式pdf:adobe acrobat自带增 ...

随机推荐

  1. background-clip、background-origin、box-sizing

    background-clip:border-box(默认).padding-box.content-box background-origin:border-box.padding-box(默认). ...

  2. 如何解决两个li之间的缝隙

    如何解决两个li之间的缝隙的问题: 在做一个类似按钮左右滑动的选择器的动效,遇到了个是关于li之间的缝隙的问题: HTML如下: <span class="c1mChanger&quo ...

  3. AVFoundation--AVPlayer

    // // AVPlayerNetViewController.m // PodsTest // // Created by ZhuYi on 16/4/29. // Copyright © 2016 ...

  4. 从零开始学Axure原型设计(高级篇)

    如果你熟悉了Axure的部件库,那么你可以得心应手地画出心目中产品的线框图:如果你会用Axure的母版.动态面板功能,那么你应该能够画出一些简单网站的原型图:但只有你精通了Axure的条件逻辑.变量. ...

  5. flex安装debug

    1.解决 不是最新版本的问题: cmd-->regedit-->HKEY_LOCAL_MATCHING-->SOFTWARE-->MACROMEDIA -->FLASHP ...

  6. ESFramework ——可堪重任的网络通信框架

    ESFramework是一套性能卓越.稳定可靠.强大易用的跨平台通信框架,支持应用服务器集群.其内置了消息的收发与自定义处理(支持同步/异步模型).消息广播.P2P通道.文件传送(支持断点续传).心跳 ...

  7. NOIP2011-普及组复赛模拟试题-第一题-NBA总冠军

    题目背景 Background 一年两度的期末考要到来了!!  题目描述 Description   又要到考试了,Ljw决定放松一下,就打开电视,看见了篮球赛,他立即想到了每年的NBA总冠军队伍.由 ...

  8. NOIP2012-普及组复赛-第一题-质因数分解

    题目描述 Description 已知正整数n是两个不同的质数的乘积,试求出两者中较大的那个质数.  输入输出格式 Input/output 输入格式:输入只有一行,包含一个正整数n.输出格式:输出只 ...

  9. NOIP2011-普及组复赛-第二题-统计单词数

    题目描述 Description 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数.  现在,请你编程实现这一功能,具体要求是:给 ...

  10. msmtp+mutt发送邮件报警

    1).yum 安装 msmtp+mutt yum install -y msmtp mutt 2).配置Muttrc信息 vim /etc/Muttrc set sendmail="/usr ...