加入收藏 | 设为首页 | 会员中心 | 我要投稿 宁德站长网 (https://www.0593zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > Asp教程 > 正文

ASP中操作UTF-8格式的文件 - ASP教程

发布时间:2016-08-09 03:31:39 所属栏目:Asp教程 来源:站长网
导读:注意:这里说的ASP ASP由于它的一些功能对UTF-8支持非常差。 比如,你想生成一个UTF-8格式的文件,使用常用的Scripting.FileSystemObject对象就不行。 Scriptin
注意:这里说的ASP

ASP由于它的一些功能对UTF-8支持非常差。

比如,你想生成一个UTF-8格式的文件,使用常用的Scripting.FileSystemObject对象就不行。

Scripting.FileSystemObject对象创建文件的函数,是下面方式:

FileSystemObject.CreateTextFile(filename[,overwrite[,unicode]])

其中的unicode属性是这样描述的:

可选项。Boolean 值指明是否以Unicode或ASCII文件格式创建文件。如果以Unicode文件格式创建文件,则该值为True;如果以ASCII文件格式创建文件,则该值为False。如果省略此部分,则假定创建 ASCII文件。

我们是无法用这个函数来创建UTF-8格式文件的。

这时候,我们可以使用ADODB.Stream对象,使用方法见下面:

Set objStream = Server.CreateObject("ADODB.Stream")
With objStream
.Open
.Charset = "utf-8"
.Position = objStream.Size
.WriteText=str
.SaveToFile server.mappath("/sitemap.xml"),2
.Close
End With
Set objStream = Nothing

附:

ASCII 、Unicode 、 UTF-8 介绍:

ASCII是一种字符集,包括大小写的英文字母、数字、控制字符等,它用一个字节表示,范围是0-127。

由于ASCII 表示的字符非常有限,各个国家或者地区在此基础上提出了自己的字符集,比如在中国应用非常广泛的GB2312,它为汉字提供了编码,用两个字节表示。

这些字符集之间互不兼容,相同的数字可能表示不同的字符,为信息交流带来了麻烦。

Unicode是一种字符集,它将世界上的所有字符映射成一个唯一的数字(code point),比如字母a对应的数字 0x0041。目前 Unicode 还处于发展中,它所包容的字符越来越多。 

在将 Unicode 表示的字符进行存储时,还需要一定的编码方式,比如 UCS-2,它用两个字节来表示 Unicode 编码的字符。而UTF-8是Unicode 字符集的另外一种编码方式,它是变长度的,最多 6 个字节,小于127 的字符用一个字节表示,与 ASCII 字符集的结果一样,因而具有非常好的兼容性,ASCII 编码下的英语文本不需要修改就可以当作 UTF-8 编码进行处理,应用非常广泛。

(编辑:宁德站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读