帮我解决一个简单问题,关于文件操作 在线等

smuzy 2003-09-14 11:34:14
以下是我的写的一个用XMLHTTP组件取得图片数据
用VB把这个数据存为文件的时候他在前面加上了12个字节其他东西
莫名其妙
请大虾门帮忙

Private Sub SaveImage(ByVal URL As String, ByVal tofile As String)
Dim Imgs
Dim FileNumber
FileNumber = FreeFile
Open "c:/smuzy.gif" For Binary Access Write As #FileNumber
Imgs = GetHTTPPage(URL) '取得图片的具休内容的过程
Put #FileNumber, , Imgs
Close #FileNumber
'以下注释掉的使用的ADODB.Stream方法
'Dim objStream As New ADODB.Stream
'Imgs = GetHTTPPage(URL) '取得图片的具休内容的过程
'objStream.Type = 1 '以二进制模式打开
'objStream.Open
'objStream.Write Imgs '将字符串内容写入缓冲
'objStream.SaveToFile APPL_PHYSICAL_PATH & tofile, adSaveCreateOverWrite '-将缓冲的内容写入文件
'objStream.Close '关闭对象
'Set objStream = Nothing
End Sub

Private Function GetHTTPPage(ByVal URL As String)
'On Error Resume Next
Dim objXmlhttp As New XMLHTTP '使用xmlhttp的方法来获得图片的内容
objXmlhttp.Open "GET", URL, False
objXmlhttp.send
If objXmlhttp.readyState <> 4 Then Exit Function
GetHTTPPage = objXmlhttp.responseBody
Set objXmlhttp = Nothing
'If Err.Number <> 0 Then Err.Clear
End Function
...全文
56 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
rainstormmaster 2003-09-15
  • 打赏
  • 举报
回复
呵呵,解决就好
smuzy 2003-09-14
  • 打赏
  • 举报
回复
自己解决了!
MSDN:
如果写入的变量是一个可变长度的字符串,则 Put 先写入一个含有字符串长度的双字节描述符,然后再写入变量。Open 语句的 Len 子句所指定的记录长度至少要比实际字符串的长度多两个字节。

所以只要修改一句就行了
Dim Imgs() as byte

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧