Foxtable(狐表)用户栏目专家坐堂 → [原创]怎样实现二进制图片列的读取


  共有9734人关注过本帖树形打印复制链接

主题:[原创]怎样实现二进制图片列的读取

美女呀,离线,留言给我吧!
cqmeiyan
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:104 积分:939 威望:0 精华:0 注册:2011/6/8 9:13:00
[原创]怎样实现二进制图片列的读取  发帖心情 Post By:2012/4/1 13:35:00 [只看该作者]

我现在做一个程序,因为数据库结构是引用原来他们的数据库,所以不能修改图片列的格式

 

想问问有没有其它方法,用代码把二进制图片存成图片文件后,再用picturebox读出?


 回到顶部
帅哥,在线噢!
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/4/1 14:02:00 [只看该作者]


 回到顶部
美女呀,离线,留言给我吧!
cqmeiyan
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:104 积分:939 威望:0 精华:0 注册:2011/6/8 9:13:00
  发帖心情 Post By:2012/4/6 16:15:00 [只看该作者]

我试了,可以调出图片了

 

但是还有个问题,可能是狐表不兼容 VB.NET语句造成的

 

问题就是,当二进制列为空值时,用VB.NET的语句无法判断(在VB.NET里是可能正常使用的)

 

烦请狐爸爸帮我看看呢,这个怎么处理呀,这个急呀,因为数据库是既有的数据库,不能改人家的数据库呀

 

Dim dt As DataTable=cmd.executereader

If Trim(dt.dataRows(0)("xx_front").ToString) = "" Then  '现在在这里没办法判断,不管数据列是否为空,这里得到的都不是空值

    Return
End If


Dim imageByte() As Byte = dt.DataRows(0)("xx_front") '所以不管值是否为空,都会执行到这里,而到这里就会提示出错

messagebox.Show (imageByte.length)

If imageByte.length > 0 Then
    Dim ms As New IO.MemoryStream(imageByte)       '将字节数组转换为二进制流
    Dim image As Image = Image.FromStream(ms)      '将二进制流转换为图片
    Forms(frmname).Controls("PictureBox1").image = image      '显示图片
End If

 

 

出错提示为:

索引超出了数组界限(无法插入图片)


 回到顶部
帅哥,在线噢!
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/4/6 16:25:00 [只看该作者]

非官方代码,没有办法支持。

我看看能够抽空做个官方的例子写入帮助。


 回到顶部
美女呀,离线,留言给我吧!
cqmeiyan
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:104 积分:939 威望:0 精华:0 注册:2011/6/8 9:13:00
  发帖心情 Post By:2012/4/6 16:43:00 [只看该作者]

就这个问题了,我现在就卡在这里呀

 

如果图片列有存图片的,就能正常调出,如果图片列为空时,就会报错,怎么都截取不到,我晕

 

(我试试用 TRY 看看行不行 )

 

还请狐爸抽空帮忙写一个嘛

 

拜托了!!!


 回到顶部
帅哥哟,离线,有人找我吗?
lihe60
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:6885 积分:43595 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2012/4/7 8:07:00 [只看该作者]

SQL有一个IMAGE列,狐表可否也增加一个image类型列?

用于存放图片和文件。

[此贴子已经被作者于2012-4-7 8:16:11编辑过]

 回到顶部