投稿日 | : 2003/08/09(Sat) 03:31 |
投稿者 | : 魔界の仮面弁士 |
Eメール | : |
URL | : |
タイトル | : Re^6: 2次元配列で・・・ |
> すると、fdataが1次元の時は
> Get #ff, , fdata
> で出来るのはどうしてなのでしょうか・・・
「Get #ff, , fdata」なら、ReDimしたfdata配列の全体に読み込まれ、
「Get #ff, , fdata(0)」なら、1次元配列の0番目要素だけに読み込まれ、
「Get #ff, , fdata(1)」なら、1次元配列の1番目要素だけに読み込まれるわけです。
なお、1次元でも2次元でも3次元でも、コードはほとんど一緒です。
=== ファイルへの書き出し ===
Dim F As Integer
Dim X() As Byte
ReDim X(2)
X(0) = 0
X(1) = 1
X(2) = 2
F = FreeFile()
Open "C:\1次元.dat" For Binary As #F
Put #F, , X
Close #F
ReDim X(2, 1)
X(0, 0) = 0
X(0, 1) = 1
X(1, 0) = 10
X(1, 1) = 11
X(2, 0) = 20
X(2, 1) = 21
F = FreeFile()
Open "C:\2次元.dat" For Binary As #F
Put #F, , X
Close #F
=== ファイルからの読み込み ===
Dim F As Integer
Dim X() As Byte
Dim l As Long
ReDim X(2)
F = FreeFile()
Open "C:\1次元.dat" For Binary As #F
Get #F, , X
Close #F
For l = 0 To 2
Debug.Print l; "="; X(l)
Next
ReDim X(2, 1)
F = FreeFile()
Open "C:\2次元.dat" For Binary As #F
Get #F, , X
Close #F
For l = 0 To 2
Debug.Print l; ",0="; X(l, 0), l; ",1="; X(l, 1)
Next