明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2549|回复: 6

[求助]vb怎么样把dwg文件转二进制存放到数据库中

[复制链接]
发表于 2009-3-18 01:07:00 | 显示全部楼层 |阅读模式

把当前已打开的AutoCAD文件(如thisdrawing1.dwg)转换成二进制数据存放入sql表中(表中字段为image类型),超急!!
谢谢!

 楼主| 发表于 2009-3-18 12:30:00 | 显示全部楼层

是vba,不是vb...`~

怎么没人知道吗?急死人了....

发表于 2009-3-18 17:56:00 | 显示全部楼层

你的目的是想将数据存到sql中,便于网络管理吗?那为什么要转成二进制的呢?你用的时候还要转出来,多麻烦。干嘛不直接写到sql中呢?根据坐标、图元类型

 楼主| 发表于 2009-3-18 18:23:00 | 显示全部楼层

dwg文件不是我做的,它已经存放在sql里了,我读出来修改后就不知道把它存回去了。。。。

根据坐标、图元。。。我不会哦。。

我用试用以下的方法,但是当图文件已打开时就会出错:“文件已打开”

Sub s_SaveFile()
          Dim iStm     As ADODB.Stream
          Dim iRe     As ADODB.Recordset
          Dim iConcstr     As String
   
          '读取文件到内容
          Set iStm = New ADODB.Stream
          With iStm
                  .Type = adTypeBinary           '二进制模式
                  .Open
                  .LoadFromFile "E:\thisdrawing1.dwg"

          End With
         
   
          '打开保存文件的表
          Set iRe = New ADODB.Recordset
          With iRe
                  .Open "select   *   from   chunks", iConc, 1, 3
                  .AddNew                   '新增一条记录
                  .Fields("photo") = iStm.Read
                  .Update
          End With
         
   
        '完成后关闭对象
          iRe.Close
          iStm.Close
  End Sub
   
   
  Sub s_ReadFile()
          Dim iStm     As ADODB.Stream
          Dim iRe     As ADODB.Recordset
          '打开表
  Set iRe = New ADODB.Recordset
  '得到最新添加的纪录
          iRe.Open "select   top   1   *   from   chunks   order   by   id   desc", iConc, adOpenKeyset, adLockReadOnly
          '保存到文件
          Set iStm = New ADODB.Stream
          With iStm
                  .Mode = adModeReadWrite
                  .Type = adTypeBinary
                  .Open
                  .Write iRe("photo")
  '这里注意了,如果当前目录下存在test1.jpg,会报一个文件写入失败的错误.
                  .SaveToFile App.Path & "\thisdrawing1.dwg"
          End With
        
   
          Image1.Picture = LoadPicture(App.Path & "\test1.jpg")
        '关闭对象
          iRe.Close
          iStm.Close
  End Sub

 楼主| 发表于 2009-3-18 18:24:00 | 显示全部楼层
有没有一个简单的方法哦。。。。
 楼主| 发表于 2009-3-19 14:12:00 | 显示全部楼层
怎么没人知道吗??郁闷。。。。。
发表于 2009-3-19 16:29:00 | 显示全部楼层
将已打开的thisdrawing1复制一份,读取!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 06:00 , Processed in 0.167431 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表