从数据库中提取BLOB并存储在Byte数组中。最初它被定义为与DB上的BLOB柱相同的大小,这是相当大的。确定BLOB列的大小
int maxsize = 20971520;
int thisSize;
Byte[] picture = new Byte[maxsize];
所以我抢斑点:
rdr.GetBytes(3, 0, picture, 0, maxsize);
,然后将其写入到磁盘:
FileStream fstream = new FileStream(ImageFullName,FileMode.OpenOrCreate,FileAccess.Write);
BinaryWriter bwriter = new BinaryWriter(fstream);
bwriter.Write(picture);
bwriter.Flush();
bwriter.Close();
fstream.Close();
的问题是,大多数这些斑点是相当小的那个是最大范围,所以如何将字节数组的大小调整为blob列的实际大小?
+1:好的研究! – 2011-01-10 15:08:05