fso保存文件怎么让编码格式为UTF-8

时间:2021-08-20 10:56:09
ASP中用FSO生成XML文件代码如下 

XMLcontent = "<?xml version='1.0' encoding='UTF-8'?>。。。。省略" 

Set FSO=Server.CreateObject("Scripting.FileSystemObject") 
Set Rs=FSO.CreateTextFile(Server.mappath("test.XML"),true) 
Rs.writeLine XMLcontent 
Set Rs=Nothing 
Set FSO=Nothing 

请问 
1,FSO生成的文件默认是什么编码格式? 
2,如何转换成UTF-8编码?

13 个解决方案

#1


FSO存UTF-8不好搞,建议用adodb.stream。资料很多,随便GOOGLE一下就找得到

#2


默认编码:charset="gb2312"这是中文编码;

#3


找个编码转换器研究一下

#4


adodb.stream 做出来了

但是还存在问题

调用保存好的文件里的数据显示结果成了乱码,

#5


我用adodb.stream  保存UTF-8 编码格式的汉字都变  乱码了  数字跟字母都好的

这要怎么解决呢

#6


CreateTextFile第三个参数为True,就是Unicode编码了
Set Rs=FSO.CreateTextFile(Server.mappath("test.XML"),true, true)
 

#7


汉字也要转码为 UTF8

#8


问题是转换以后所有的汉字都变成  乱码了

#9


FSO存UTF-8可能比较难,用adodb.stream吧;以前尝试过,但没搞成功过

#10


引用 4 楼 oyayakun 的回复:
adodb.stream 做出来了

 但是还存在问题

 调用保存好的文件里的数据显示结果成了乱码,

adodb.stream里要设置字符集为UTF-8.
xxx.Charset = "UTF-8"

#11


stream写utf-8时,会自动加一个utf-8签名,该签名占用三个字节,因此stream要重拷贝字节数据,position设置到第4位,也就是stream.position = 3,然后拷贝到其他stream再保存文件

#13


引用 6 楼 hookee 的回复:
CreateTextFile第三个参数为True,就是Unicode编码了
Set Rs=FSO.CreateTextFile(Server.mappath("test.XML"),true, true)


谢谢hookee 兄弟,解决我的问题了。为啥其他筒子们会有其他的问题出现呢??不解中。。。。。。。

#1


FSO存UTF-8不好搞,建议用adodb.stream。资料很多,随便GOOGLE一下就找得到

#2


默认编码:charset="gb2312"这是中文编码;

#3


找个编码转换器研究一下

#4


adodb.stream 做出来了

但是还存在问题

调用保存好的文件里的数据显示结果成了乱码,

#5


我用adodb.stream  保存UTF-8 编码格式的汉字都变  乱码了  数字跟字母都好的

这要怎么解决呢

#6


CreateTextFile第三个参数为True,就是Unicode编码了
Set Rs=FSO.CreateTextFile(Server.mappath("test.XML"),true, true)
 

#7


汉字也要转码为 UTF8

#8


问题是转换以后所有的汉字都变成  乱码了

#9


FSO存UTF-8可能比较难,用adodb.stream吧;以前尝试过,但没搞成功过

#10


引用 4 楼 oyayakun 的回复:
adodb.stream 做出来了

 但是还存在问题

 调用保存好的文件里的数据显示结果成了乱码,

adodb.stream里要设置字符集为UTF-8.
xxx.Charset = "UTF-8"

#11


stream写utf-8时,会自动加一个utf-8签名,该签名占用三个字节,因此stream要重拷贝字节数据,position设置到第4位,也就是stream.position = 3,然后拷贝到其他stream再保存文件

#12


#13


引用 6 楼 hookee 的回复:
CreateTextFile第三个参数为True,就是Unicode编码了
Set Rs=FSO.CreateTextFile(Server.mappath("test.XML"),true, true)


谢谢hookee 兄弟,解决我的问题了。为啥其他筒子们会有其他的问题出现呢??不解中。。。。。。。