rainstormmaster(暴风雨 v2.0) 您好,也请各位看过来(问题加感谢贴)

pantung 2005-11-28 04:32:05
rainstormmaster(暴风雨 v2.0),速度确实很慢,自己定义了下缓冲区,结果死机了:)
设想是一次读100KB的大小,我需要做什么?
谢谢
其他朋友可能不知道我说什么,下面是代码,欢迎大家指点我
Dim buff() As Byte
ReDim buff(0) '一次只读一个字节,速度会相当慢,想快点就要把缓冲区定义得大一些,当然代码也要进行修改
Open mFile For Binary As #1
For i = 1 To mFileLen
Get #1, i, buff(0)
iStm.Write buff
Me.ProgressBar1.Value = i
Next
-------------------------------------------------------
本来是准备单独发感谢贴,但是我只有40点了(汗~~~,小弟问题比较多),所以一并发了。
到今天总算是把数据库程序搞出来了,学习了一些控件的知识,首先很感谢csdn提供了这个技术交流平台。其次,非常谢谢帮助过我的朋友,暴风雨 v2.0,Leftie(左手,为人民币服务),超级绿豌豆,zyg0(影子(成功减肥10斤,可给我饿坏了,我要补回来) ,金脚指,老加班的人--好好学习,天天吃饭) ,vbman,sendwb(风间苍月),yinweihong(真名:尹伟红) ,hot1kang1(许仙) ,还有许许多多的朋友,他(她)们曾耐心地解答过我的很多问题。

这里很感谢你们。
谢谢
...全文
130 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
pantung 2005-11-30
  • 打赏
  • 举报
回复
这两天没有回复,在查这页代码相关资料,小弟谢过各位大侠,结贴.
rainstormmaster 2005-11-28
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
Dim i As Long
Dim mFile As String
mFile = "e:\mc\rich.doc"
Dim mFileLen As Long
mFileLen = FileLen(mFile)
Me.ProgressBar1.Min = 0
Me.ProgressBar1.Max = mFileLen
Dim iStm As ADODB.Stream
Set iStm = New ADODB.Stream
iStm.Type = adTypeBinary
iStm.Open
Dim buff() As Byte
Dim buffsize As Long
Dim ReadNum As Long
Dim NotReadbuffsize As Long
buffsize = 1024& * 100&
If mFileLen < buffsize Then
ReDim buff(mFileLen - 1)
Open mFile For Binary As #1
Get #1, , buff
iStm.Write buff
Me.ProgressBar1.Value = mFileLen
Close #1
Else
NotReadbuffsize = mFileLen
Open mFile For Binary As #1
Do
If NotReadbuffsize < buffsize Then
ReDim buff(NotReadbuffsize - 1)
Else
ReDim buff(buffsize - 1)
End If
Get #1, , buff
iStm.Write buff
ReadNum = ReadNum + 1
NotReadbuffsize = mFileLen - buffsize * ReadNum
Me.ProgressBar1.Value = iStm.Size
Loop Until NotReadbuffsize <= 0
Close #1
End If
iStm.SaveToFile "e:\mc\bpi.doc"
iStm.Close
End Sub

winehero 2005-11-28
  • 打赏
  • 举报
回复
你们老板看到蜗牛在跑就很高兴吗?

象楼上 flyingscv(zlj) 说的,不用逐个字节读,依据文件大小(mFileLen),按实际情况
分段读取更合理一些。。。
panl82 2005-11-28
  • 打赏
  • 举报
回复
to编程人生,嗯,boss觉得上传文件的时候看着进度条爽。
相关这个问题的链接:)
http://community.csdn.net/Expert/TopicView3.asp?id=4418371

谢谢
flyingscv 2005-11-28
  • 打赏
  • 举报
回复
8k8k的读
winehero 2005-11-28
  • 打赏
  • 举报
回复
逐个字节读取当然慢了。。。为何要这样做?难道仅仅是为一进度条吗?!

1,451

社区成员

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

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