能获取到文件的大小吧,然后根据你块的大小确定分成多少个数组,数据可以先定义,然后再确定多少,好像是redim a (9)这样的语句吧,然后还有一个参数,可以允许你在动态定义数组大小的时候,保存原有数组里面的数据,你到csdn上查查看吧,如果不能确定文件大小,就要用这个方法了,获取一块,改变一下数组大小,存一个数组变量。试一下吧
Private Sub Form_Load() Dim Arr1() Dim Arr2() Dim Arr3() '……………… Dim Arrn() ReDim Arr1(200) ReDim Arr2(50) ReDim Arr3(85) '……………… ReDim Preserve Arrn(i) End Sub
定义模块级数组 public arrFileData() as byte在函数中重定义: dim nLen as long nLen = 获取你需要定义的动态大小 dim arrFileData(nLen) as byte
文件的话: dim a() as byte...redim a(1 to file.size)... 一般都是这么做.
倒.直接用个自定义类型不行么.private MyType theArrs() as byte 'Byte是你的文件存储类型,二进制读写就使用这个. end typedim theMainData() as mytype '改变这个数组的维数就可以改变多个动态数组了
我是想实现这样的功能大文件,分块的问题 每个块分别独立 设计到要在次使用的问题想让多个数组分别来存储 for i= 1 to n dim sz $i (1 to 100) as long next 当i=1时,定义一个sz1数组 当i=2时,定义一个sz2数组 当i=3时,定义一个sz3数组 当i=4时,定义一个sz4数组 . . . 当i=N时,定义一个szN数组类似这样的定义,因为 每个文件块分别要独立 设计到要在次使用的问题
private MyType theArrs() as byte 'Byte是你的文件存储类型,二进制读写就使用这个. end typedim theMainData() as mytype '改变这个数组的维数就可以改变多个动态数组了redim themaindata(100) '初始化为101个元素redim themaindata(0).thearrs(4095) '把第一个数组初始化为4096字节,放一块内容(4K)redim preserve thamaindata(101) '如果前101个文件块都用光了,还要需要增加一个文件块,就使用Preserve关键字.不知道能不能明白我的意思........
Dim Arr1()
Dim Arr2()
Dim Arr3()
'………………
Dim Arrn()
ReDim Arr1(200)
ReDim Arr2(50)
ReDim Arr3(85)
'………………
ReDim Preserve Arrn(i)
End Sub
dim nLen as long
nLen = 获取你需要定义的动态大小
dim arrFileData(nLen) as byte
dim a() as byte...redim a(1 to file.size)...
一般都是这么做.
theArrs() as byte 'Byte是你的文件存储类型,二进制读写就使用这个.
end typedim theMainData() as mytype '改变这个数组的维数就可以改变多个动态数组了
dim sz $i (1 to 100) as long
next
当i=1时,定义一个sz1数组
当i=2时,定义一个sz2数组
当i=3时,定义一个sz3数组
当i=4时,定义一个sz4数组
.
.
.
当i=N时,定义一个szN数组类似这样的定义,因为 每个文件块分别要独立 设计到要在次使用的问题
theArrs() as byte 'Byte是你的文件存储类型,二进制读写就使用这个.
end typedim theMainData() as mytype '改变这个数组的维数就可以改变多个动态数组了redim themaindata(100) '初始化为101个元素redim themaindata(0).thearrs(4095) '把第一个数组初始化为4096字节,放一块内容(4K)redim preserve thamaindata(101) '如果前101个文件块都用光了,还要需要增加一个文件块,就使用Preserve关键字.不知道能不能明白我的意思........