重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
图片数据其实就是一组二进制数据。你要存到csv中应该是字符串格式。很少见这样的存储方式。你可以把数据存储在数据库中的呀。存取图片就很好搞了
网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、微信小程序定制开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了双柏免费建站欢迎大家使用!
Dim curSqlstr As String = "INSERT INTO Picture(picture_id, picture_area)" _
"VALUES('" (i + 1).ToString() "','@picture_area ')"
你看这句中的,'@picture_area ')",多个单引号了,被当成VARCHAR处理了.去了单引号才是变量.
这是vb2005的代码,你试一下,这是我以前做的一段代码,从库中读取到显示。
olecon = New OleDbConnection(constr)
olecon.Open()
Dim comm As New OleDbCommand("select 照片 from 表 where name='李三', olecon)
Dim reader As OleDbDataReader = comm.ExecuteReader
reader.Read()
Dim photofile() As Byte
photofile = reader.GetValue(0)
Dim streamph As New MemoryStream(photofile)
PictureBox1.Image = Image.FromStream(streamph)
这段代码是我从我做的小软件中截出来的,我在2005中就用着,2005是通过的,不知道加到2010中能否执行。
-------------------------------
根据你的发的图,我看了,好像你从库中取出的不是一条记录呀,我的代码只能取一条记录的情况,你的明显取出多条记录,代码只认最后一条,你的文件长度为0,当然不行了
select 照片 from 表 where name='李三',这条语句只能取出单条记录,且ole字段中确定有文件存在的,而且是图片格式才能显示
-------------------------------------------------------
Dim streamph As New MemoryStream(photofile)
你的是 Dim streamph = New MemoryStream(photofile)
这句你的和我的不一样,是不是这里的问题,2010没用过,要是还不行,我也不知道了