赞助广告 赞助广告
  当前位置:网络学院ASP技术ASP应用 → 用ASP读写UTF-8编码的文件
用ASP读写UTF-8编码的文件
日期:2005年7月5日 作者:freetest 人气: 查看:[大字体 中字体 小字体]
最近一个项目用到这个,为什么呢?因为要用ASP文件来修改ASP文件,也就是说在代码中动态的修改要执行的ASP文件,由于项目是多语种的,所以,最终选用UTF-8统一编码
开始尝试用ASP的FSO对象来完成,在尝试过无数次后,终于死心,FSO对象只能读写ANSI编码的文本文件,并且只能读写文本文件
在GOOGLE上搜了一通,关于ASP,FSO,UTF-8的内容很少,于是,就是自己的书库中找,先是翻了翻中译本的
<ASP3高级编程>,没找到,后来,打开了一本英文书叫<ActiveX Data Object>,是O'reilly出的,忽然间在书中翻到了ADODB.STREAM对象,看到他的范例中用来读写文件.于是尝试用MS的WEBMATRIX的CLASS BROWSER浏览ADODB对象.发现STREAM类原来有LOADFROMFILE和SAVETOFILE方法.并且有一个至关重要的属性CHARSET,这是FSO没有的
于是,经过N次重试,终于写出了两个用于读写UTF-8编码文件的函数来,希望对大家有帮助
下面是代码

  CODE:  
'-------------------------------------------------
'函数名称:ReadTextFile
'作用:利用AdoDb.Stream对象来读取UTF-8格式的文本文件
'----------------------------------------------------
function ReadFromTextFile (FileUrl,CharSet)
    dim str
    set stm=server.CreateObject("adodb.stream")
    stm.Type=2 '以本模式读取
    stm.mode=3
    stm.charset=CharSet
    stm.open
    stm.loadfromfile server.MapPath(FileUrl)
    str=stm.readtext
    stm.Close
    set stm=nothing
    ReadFromTextFile=str
end function
'-------------------------------------------------
'函数名称:WriteToTextFile
'作用:利用AdoDb.Stream对象来写入UTF-8格式的文本文件
'----------------------------------------------------
Sub WriteToTextFile (FileUrl,byval Str,CharSet)        
    set stm=server.CreateObject("adodb.stream")
    stm.Type=2 '以本模式读取
    stm.mode=3
    stm.charset=CharSet
    stm.open
    stm.WriteText str
    stm.SaveToFile server.MapPath(FileUrl),2   
    stm.flush
    stm.Close
    set stm=nothing
end Sub

(出处:Im286)

相关文章:
 
·VBScript 编码约定
·IIS5 UNICODE 编码漏洞的利用心得
·IIS5 UNICODE 编码漏洞的利用心得补充
·VBScript 编码约定
·Microsoft 脚本编码器Script Encoder介绍(1)全中文
·Microsoft 脚本编码器Script Encoder介绍(2)全中文
·Microsoft 脚本编码器Script Encoder介绍(3)全中文
·Microsoft 脚本编码器Script Encoder介绍(4)全中
·Microsoft 脚本编码器(1) --- 概述
·Microsoft 脚本编码器(1) --- 使用脚本编码器
相关软件:
 
·邮政编码电话区号查询
·MYSQL数据库编码转换 数据导入恢复工具
  特别推荐
  热点TOP10