社区
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?
或者有没有其它的解决办法?
...全文
842
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。有哪位能帮忙解决吗?分不够可以再加。
indexroot
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下现在我还没想不到什么解决办法。郁闷
龙宜坡
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依然存在。看来是组件自身的限制了。
不知道有没有别的办法呢?
阿_浩
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)
修改oracle用户密码永不过期---ORA-28002的解决方法
1.查看用户的proifle是哪个,一般是default: sql>SELECT username,PROFILE FROM
db
a_users; 2.查看指定概要文件(如default)的密码有效期设置: sql>SELECT * FROM
db
a_profiles s WHERE s.profile='DEFAU...
Oracle 11g 错误:ORA-28002: the password will expire within 7 days 解决方法
原 Oracle 11g 错误:ORA-28002: the password will expire within 7 days 解决方法 版权声明:欢迎转载 https://blog.csdn.net/liaoqianwen123/article/details/24887873 ERROR:ORA-28002: the password will expire within 7 day...
ORA-28002: the password will expire解决办法
Oracle11g R2数据库提示ORA-28002: the password will expire within 5 days,是说密码过期,将Oracle密码设置成永不过期就可以了,不过并不推荐这样做,最好是将日期密码有效期设置长一些。 SQLDeveloper或者在项目中连接数据库提示 ORA-28002: the password will expire within 5...
oracle修改密码命令 28221,Oracle 提示修改密码 ORA-28002和ORA-28221数据库用户修改密码报错解决办法...
当遇到密码只有X天使用期错误提示时:ORA-28002: the password will expire within string days 如 ERROR:ORA-28002: the passw修改数据库用户密码,当用户不是
db
a级用户即普通用户时,修改密码必须用replace子句(即必须知道旧密码才能改)ALTER USER hljitsm IDENTIFIED BY hljitsm_1...
Oracle用户密码过期,修改永不过期
Oracle用户密码过期,修改永不过期
ASP
28,402
社区成员
356,940
社区内容
发帖
与我相关
我的任务
ASP
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
复制链接
扫一扫
分享
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章