c#,winform,数据库图片,如何显示问题。。。急急急!!!! 50
图片已经直接存储在服务器的数据库中,用select语句选出来之后,是长达两三页的乱码,如:“0xFFD8FFE000104A46494600010101006000600...
图片已经直接存储在服务器的数据库中,用select语句选出来之后,是长达两三页的乱码,如:“0xFFD8FFE000104A46494600010101006000600000FFDB004300080606070605080707070909080A0C140D0C0B0B0C1912130F141D1A1F1E1D1A1C1C20242E2720222C231C1C2837”。
现在,想再winform界面中显示出该图片,请问怎样显示? 展开
现在,想再winform界面中显示出该图片,请问怎样显示? 展开
4个回答
展开全部
你的图片采用的是16进制编码吧,建议你将图片保存在本地电脑,数据库里存放图片所在的路径
下面是针对你的问题显示图片
public void pic(string p)
{
//这里根据你的16进制编码进行反编码,不知道你是怎么编码过来的,下面用UTF8示例
//byte[] imageBuffer=System.Text.Encoding.Default.GetBytes(p);
//UTF8编码
byte[] imageBuffer = System.Text.UTF8Encoding.Default.GetBytes(p);
MemoryStream ms = new MemoryStream(imageBuffer);
Image img = Image.FromStream(ms);
//放个pictureBox显示图片
pictureBox1.Image=img;
}
希望可以帮到你,答案要记得采纳
下面是针对你的问题显示图片
public void pic(string p)
{
//这里根据你的16进制编码进行反编码,不知道你是怎么编码过来的,下面用UTF8示例
//byte[] imageBuffer=System.Text.Encoding.Default.GetBytes(p);
//UTF8编码
byte[] imageBuffer = System.Text.UTF8Encoding.Default.GetBytes(p);
MemoryStream ms = new MemoryStream(imageBuffer);
Image img = Image.FromStream(ms);
//放个pictureBox显示图片
pictureBox1.Image=img;
}
希望可以帮到你,答案要记得采纳
追问
byte[] imageBuffer = System.Text.UTF8Encoding.Default.GetBytes(p);
这一步就行不通。
我的这些乱码是从 xml文件传过来的,默认string类型,转换不了。
我不能直接操作数据库,
展开全部
1.你先看看数据库中的图片是否是正确的数据。应该存储的是一个路径信息吧
2.如果数据库里是正确的,建议输出的时候编一下码~例如字符串输出
2.如果数据库里是正确的,建议输出的时候编一下码~例如字符串输出
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不错哟呵呵
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
请问你存储的图片的路径是经过加密操作的吗?
追问
好像没有。
之前是用vb 直接存进数据库的。
追答
哦,你现在是将以前用vb存储的图片路径的数据现在读取出来后,通过Image或者是ImageButton控件来显示出来对吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询