[求助]vb怎么样把dwg文件转二进制存放到数据库中
<p>把当前已打开的autocad文件(如thisdrawing1.dwg)转换成二进制数据存放入sql表中(表中字段为image类型),超急!!<br/>谢谢!</p> <p>是vba,不是vb...`~</p><p>怎么没人知道吗?急死人了....</p> <p>你的目的是想将数据存到sql中,便于网络管理吗?那为什么要转成二进制的呢?你用的时候还要转出来,多麻烦。干嘛不直接写到sql中呢?根据坐标、图元类型</p> <p>dwg文件不是我做的,它已经存放在sql里了,我读出来修改后就不知道把它存回去了。。。。</p><p>根据坐标、图元。。。我不会哦。。</p><p>我用试用以下的方法,但是当图文件已打开时就会出错:“文件已打开”</p><p>Sub s_SaveFile()<br/> Dim iStm As ADODB.Stream<br/> Dim iRe As ADODB.Recordset<br/> Dim iConcstr As String<br/> <br/> '读取文件到内容<br/> Set iStm = New ADODB.Stream<br/> With iStm<br/> .Type = adTypeBinary '二进制模式<br/> .Open<br/> .LoadFromFile "E:\thisdrawing1.dwg"</p><p> End With<br/> <br/> <br/> '打开保存文件的表<br/> Set iRe = New ADODB.Recordset<br/> With iRe<br/> .Open "select * from chunks", iConc, 1, 3<br/> .AddNew '新增一条记录<br/> .Fields("photo") = iStm.Read<br/> .Update<br/> End With<br/> <br/> <br/> '完成后关闭对象<br/> iRe.Close<br/> iStm.Close<br/> End Sub<br/> <br/> <br/> Sub s_ReadFile()<br/> Dim iStm As ADODB.Stream<br/> Dim iRe As ADODB.Recordset<br/> '打开表<br/> Set iRe = New ADODB.Recordset<br/> '得到最新添加的纪录<br/> iRe.Open "select top 1 * from chunks order by id desc", iConc, adOpenKeyset, adLockReadOnly<br/> '保存到文件<br/> Set iStm = New ADODB.Stream<br/> With iStm<br/> .Mode = adModeReadWrite<br/> .Type = adTypeBinary<br/> .Open<br/> .Write iRe("photo")<br/> '这里注意了,如果当前目录下存在test1.jpg,会报一个文件写入失败的错误.<br/> .SaveToFile App.Path & "\thisdrawing1.dwg"<br/> End With<br/> <br/> <br/> Image1.Picture = LoadPicture(App.Path & "\test1.jpg")<br/> '关闭对象<br/> iRe.Close<br/> iStm.Close<br/> End Sub</p> 有没有一个简单的方法哦。。。。 怎么没人知道吗??郁闷。。。。。 将已打开的thisdrawing1复制一份,读取!
页:
[1]