如何用ADODB.Stream的Write方法二进制写入文件中

ASP 如下:
Set mstream = Server.CreateObject("ADODB.Stream")
mstream.Type = 1
mstream.Open(filecontent)
mstream.Write(filecontent)
mstream.SaveToFile ("e:/gg.ppt")
其中filecontent是文件的内容
为什么老是出错,但用WriteText 就可以,可文件内容却不一样
---------------------------------------------------------------

make sure filecontent is in binary format, try

Set mstream = Server.CreateObject("ADODB.Stream")
mstream.Type = 1
mstream.Open
mstream.Write filecontent
mstream.SaveToFile "e:\gg.ppt", 2

also see
http://support.microsoft.com/default.aspx?scid=KB;en-us;q258038
---------------------------------------------------------------

http://expert.csdn.net/Expert/topic/1215/1215798.xml?temp=.6479303

这个帖子可能有所帮助,看看吧
---------------------------------------------------------------

完全同意saucer的写法

SaveToFile后面要加参数,
参数的值是常量
Const adSaveCreateOverWrite = 2 '如果文件存在就覆盖

顺便说一下.MSDN把这个常量的值错写成4了!!!

害人不浅
---------------------------------------------------------------

指定stream对象的type属性:
adTypeBinary 1 指示二进制数据。
adTypeText 2 默认值。指示文本数据,该文本数据在 Charset 指定的字符集中。

---------------------------------------------------------------

荣幸见到了 MVP。

Published At
Categories with Web编程
comments powered by Disqus