我在程序中有个结构体,在结构体中包括若干不定长数组,例如test() as double,数组大小在程序运行后才能确定。目前的问题是,我用put语句保存这个结构体时发现,只保存了这个数组的地址(长度4),并没有保存数据,请问有什么办法保存这些数组内容到dat文件中?
解决方案 »
- WriteProcessMemory以前有人问过了,还是有问题啊。我也是写四字节啊,怎么搞滴,还是不成功麻!
- 这个对象是引用什么东西的
- 控件问题
- 一个关于通用对话框的问题
- 升 ★ 了 高兴ing 散分! 谢谢大家
- 关于读取文本文件到数组?
- 怎样在vb里运行是创建构件?
- trueDBGrid中如何设置某行的颜色,譬如符合某种条件的则置为红色,求帮助,急!!!
- 那有InstallShield下载(中英文都可以,版本要6.0以上),非常感谢.
- 在VBSCRIPT里调用程序??
- 如何返回MSHFLEXGRID控件指定行的位置?
- MSXML2.ServerXMLHTTP 在Windows XP SP2下不正常
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (pDest As Any, pSrc As Any, ByVal ByteLen As Long)Private Sub Command1_Click()
Dim fNo As Integer
Dim a() As Double
Dim b() As Double
Dim t() As Byte
Dim l As LongReDim a(3) As Double
Dim i As Integer
For i = 0 To 3
a(i) = Rnd() * 10
Debug.Print a(i)
Next'写入
fNo = FreeFile()
l = (UBound(a) + 1) * 8
ReDim t(l - 1) As Byte
CopyMemory t(0), a(0), l
Open "e:\a.data" For Binary As fNo
Put #fNo, , t()
Close #fNo'读出
fNo = FreeFile()
Open "e:\a.data" For Binary As fNo
l = LOF(fNo)
ReDim t(l - 1) As Byte
Get #fNo, , t()
Close #fNo
ReDim b(l \ 8 - 1) As Double
CopyMemory b(0), t(0), lDebug.Print UBound(b)
For i = 0 To UBound(b)
Debug.Print b(i)
NextEnd Sub[/code]
我不知道怎么保存带有动态数组的结构体数据到文件。
for random ? for binary ?