社区
ASP
帖子详情
用ADODB.STREAM生成UTF-8编码的HTML时能不能去除BOM?
kanshangren
2006-06-22 11:06:13
一个生成HTML的程序,模板是一个UTF-8的HTML文件,在这个文件里已经去除了BOM。
现在用ADODB.STREAM读取模板,添加内容,然后输出为UTF-8的HTML网页。但我检查这个HTML时
发现又被自动加上了BOM。
请问有没有办法在生成时不要自动加入BOM?
或者有没有其它的解决办法?
...全文
768
31
打赏
收藏
用ADODB.STREAM生成UTF-8编码的HTML时能不能去除BOM?
一个生成HTML的程序,模板是一个UTF-8的HTML文件,在这个文件里已经去除了BOM。 现在用ADODB.STREAM读取模板,添加内容,然后输出为UTF-8的HTML网页。但我检查这个HTML时 发现又被自动加上了BOM。 请问有没有办法在生成时不要自动加入BOM? 或者有没有其它的解决办法?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
31 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
bob_wang526
2006-09-08
打赏
举报
回复
不写最前面的2个字节就可以了好像.
kanshangren
2006-06-26
打赏
举报
回复
谢谢楼上的。这样感觉应该可以,不过效率肯定很低了,很难实际应用了。
看来不太好解决,结帖了。
kanshangren
2006-06-25
打赏
举报
回复
UP。有哪位能帮忙解决吗?分不够可以再加。
love01px
2006-06-25
打赏
举报
回复
试试用saveToFile保存为 .zip文件,然后再用FSO重命名为.html
看看,是不是 UTF-8 NO BOM的文件
madpolice
2006-06-24
打赏
举报
回复
.Type = 2
.Mode = 3
.Open
.Charset = "UTF-8"
.WriteText Content
.Position = 2 '跳过BOM
result = .ReadText
'response.write result
kanshangren
2006-06-24
打赏
举报
回复
UP
kanshangren
2006-06-24
打赏
举报
回复
谢谢madpolice(午夜狂龙)。
不过这样做还是没用的。前面的代码我测试过了,直到.Position = 2 '跳过BOM这句都是正确的。用下面的输出个result,也是不带BOM的,应该是在最后SaveToFile时WINDOWS自作主张,加上了个BOM。ASP.NET中可以有参数控制,在ASP下现在我还没想不到什么解决办法。郁闷
goga21cn
2006-06-23
打赏
举报
回复
不会
ATHENA112
2006-06-23
打赏
举报
回复
抱歉自动去掉BOM我也不会。
建议你找找有没相关组件。
kanshangren
2006-06-23
打赏
举报
回复
生成后再处理一次?请教一下怎么用ASP代码去掉BOM?
ATHENA112
2006-06-23
打赏
举报
回复
不去掉那一行就不行,那行会自动加BOM。
你只有考虑其他方法,如把ADODB.STREAM换成其他东西或生成后再处理一次。
lolo2006
2006-06-23
打赏
举报
回复
关注
kanshangren
2006-06-23
打赏
举报
回复
去掉了当然能正常显示的,GOOGLE的网页就是去了BOM的。
我之所以用ADODB.STREAM而没用FSO就是为了能生成UTF-8的文档,肯定不能去掉那一行了。
ATHENA112
2006-06-23
打赏
举报
回复
如果去掉BOM你的UTF-8网页还能正常显示吗?不明白为什么要去掉
你是用ADODB.STREAM生成HTML的吧?你可以把
.Charset="XXX"
这行去掉试试
kanshangren
2006-06-23
打赏
举报
回复
BOM是Byte Order Mark,用来表示UTF-8的编码方式的。WINDOWS下像NOTEPAD等程序保存UTF-8时都会加入这么一部分信息。但一些老的浏览器不支持BOM,所以有时候会出现问题,我想把它们去掉。
kanshangren
2006-06-23
打赏
举报
回复
发现了上面代码中的问题,我把position放在WriteText之后,但无论怎么调整POSITION的数字,对输出的结果好像都没有影响,BOM依然存在。看来是组件自身的限制了。
不知道有没有别的办法呢?
chzxq
2006-06-23
打赏
举报
回复
关注。bom是什么??
mrshelly
2006-06-23
打赏
举报
回复
http://blog.csdn.net/jimzhu/archive/2005/05/19/376253.aspx
jspadmin
2006-06-23
打赏
举报
回复
版权信息?
jspadmin
2006-06-23
打赏
举报
回复
BOM是什么东西?
加载更多回复(11)
去掉
Ado
db
.
Stream
输出
UTF-8
的
BOM
通过
Ado
db
.
Stream
,可以很方便的读写二进制及及文本流,可读写文件,并可指定文本流的字符集
编码
。可是
Ado
db
.
Stream
输出
UTF-8
编码
的文本流时,会在流的最前端加上
BOM
。
BOM
是什么:Byte Order Mark,
UTF-8
编码
特有的标记,在文件流的开始中占用3个字节“EF BB BF”。
BOM
有什么用处:这里不做讨论,这里要讨论的是如何在
Ado
db
.
Stream
(以下简化为
避免
Ado
db
.
Stream
输出
UTF-8
时自动写入的
BOM
(asp)
asp
生成
html
如果采用utf8
编码
方式,多数采用的是
Ado
db
.
Stream
组件,因为fso并
不能
支持
Utf-8
最近在写一个
生成
HTML
页面的程序,模板是一个
UTF-8
的
HTML
文件,在这个文件里已经
去除
了
BOM
。现在用
ADO
DB
.
STREAM
读取模板,添加内容,然后输出为
UTF-8
的
HTML
网页。但我检查这个
HTML
时发现被自动加上了
BOM
。导致申明错误,从而使d
Excel VBA
生成
xml文件及一些技巧
前言 4个月前接了一个小任务,其中需要将Excel收集的数据转换为Excel,这里主要用到VBA进行开发,自己之前也没使用过VBA,知道这个东西能极大提高使用Excel的效率。通过这次开发,熟悉了一下VBA,也踩了一些坑,记录一下供大家参考。 参考 VBA 格式化输出XML(
UTF-8
无
BOM
编码
) https://blog.csdn.net/luwhite/article/details/5...
js技巧收集(200多个)
转贴自 http://long5257.blog.51cto.com/451436/96387 1.文本框焦点问题onBlur:当失去输入焦点后产生该事件onFocus:当输入获得焦点后,产生该文件Onchange:当文字值改变时,产生该事件Onselect:当文字加亮后,产生该文件(value==) {value=郭强}">点击时文字消失,失去焦点时文字再出现2.网页按
ASP中Base64
编码
解码函数的实现与应用
Base64
编码
作为一种将二进制数据转换为可打印ASCII字符的
编码
方式,在Web开发尤其是早期ASP(Active Server Pages)技术中扮演着至关重要的角色。在ASP环境中,由于缺乏原生支持的加密或安全传输机制,开发者常依赖Base64对敏感信息如用户凭证、会话令牌或图片资源进行简单封装,以实现跨平台、跨系统的安全数据传递。本章将系统介绍ASP技术背景及其运行环境特点,阐述Base64
编码
的基本概念、发展历史以及其在动态网页处理中的核心地位。
ASP
28,407
社区成员
356,948
社区内容
发帖
与我相关
我的任务
ASP
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
复制链接
扫一扫
分享
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章