ASP中可以用FSO生成文件,使用起来十分简单,几行代码可以完成,但是如果你想生成UTF-8格式的文件,恐怕FSO就无能为力了。
FSO的CreateTextFile方法:
FSO.CreateTextFile(Server.mappath("test.XML"), true, true)
最后一个参数是指定编码格式为Unicode,而默认或者不设值的话是ASCII,Unicode是UTF-8、UTF-16、UTF-32的合集,默认情况下为16,所以即使设置了参数为true,生成的文件格式也只是UTF-16,而非UTF-8。
也就是说,FSO不支持直接生成UTF-8格式的文件。要想生成UTF-8格式的文件,需要用到adodb.stream对象。
如下是代码:
'函数名称:ReadTextFile
'作用:利用Adodb.Stream对象来读取UTF-8编码的文件
'示例:ReadFromTextFile("File/FileName.htm",UTF-8)
Function ReadFromTextFile(FileUrl,CharSet)
dim str,stm
set stm=server.CreateObject("adodb.stream")
stm.Type=2'以本模式读取
stm.mode=3
stm.charset=CharSet
stm.open
stm.loadfromfile server.map(FileUrl)
str=stm.readtext
stm.Close
set stm=nothing
ReadFromTextFile=str
End Function
'函数名称:WriteToTextFile
'作用:利用Adodb.Stream对象来写入UTF-8编码的文件
'示例:WriteToTextFile("File/FileName.htm",Content,UTF-8)
Sub WriteToTextFile(FileUrl,byval Str,CharSet)
dim stm
set stm=server.CreateObject("adodb.stream")
stm.Type=2'以本模式读取
stm.mode=3
stm.charset=CharSet
stm.open
stm.WriteText Str
stm.SaveToFile server.map(FileUrl,2)
stm.flush
stm.Close
set stm=nothing
End Sub
☉客户端excel表如何导入远程sql server服务器(asp) (2009-9-12 23:51:46)
☉asp执行ping命令 (2009-9-6 22:49:2)
☉ASP HTTP组件下载、简单介绍、属性方法及使用范例【全】 (2009-8-3 1:40:45)
☉最简单的asp中调用存储过程的实例 (2009-8-1 11:41:50)
☉测试空间是否支持XMLHTTP组件 (2009-7-13 23:8:17)
☉测试空间是否支持ADODB.STREAM的方法 (2009-7-12 12:52:16)
☉asp获取网页源代码并处理乱码的方法 (2009-7-11 22:15:34)
Blinux 的最新文章:百度被伊朗黑客攻击截图赏析
Liwen 于 2010-1-12 13:56:06 回复百度被黑?怪不得!凌晨5点就发现百度有问题了,我赶紧把卡卡网的默认检测网址改为了www.google.cn。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。