从表中读取二进制数据
本文关键字:二进制 数据 读取 | 更新日期: 2023-09-27 18:04:28
我有PostgreSQL 9.2,与这个表:
CREATE TABLE "Task"
(
"taskID" serial NOT NULL,
"taskType" text NOT NULL,
"taskComment" text NOT NULL,
"taskDate" date NOT NULL,
"taskeImage" bytea,
CONSTRAINT "Task_pkey" PRIMARY KEY ("taskID")
)
表已经被记录填充。我只是想读取taskeImage
并将其显示在pictureBox1
中。
这是我的尝试:
//some initial code goes here
NpgsqlDataReader dr = command.ExecuteReader();
dr.Read();
pictureBox1.Image=dr[4];
conn.Close();
PictureBox.Image
是Image类型,dr[4]
可能会返回byte[]
。您需要从byte []
创建一个图像,如下所示:
using (MemoryStream ms = new MemoryStream((byte[])dr[4]))
{
pictureBox1.Image= Image.FromStream(ms);
}