我sql2000数据库里的一个字段是Image类型
 都是将图片以字节流的形式存进去的
 现在想取出来 
 并保存在某个文件夹下(例如 C:\)
 请问该如何实现

解决方案 »

  1.   

    那也不应该转成string啊
    你是想从数据库提取出数据,生成图片,放某个文件夹里吗?
      

  2.   

    用FileStream来操作,将字节流写入文件应该就可以啦。
      

  3.   

    Image类型的字段,用byte数组来存储
      

  4.   

    例如:
    FileStream fs = File.OpenRead("E:\\test.jpg");
    byte[] imageb = new byte[fs.Length];
    fs.Read(imageb, 0, imageb.Length);
    我将 E:\\test.jpg 这个文件以字节流的形式赋值给 imageb
    然后再保存到数据库的Image类型的字段下但是怎么取出来保存在另一个文件夹下啊..?
    还有就是取出来后..名称是什么..?
      

  5.   

    //我当你会从数据库中取出数据啦。
    DataRow dr=dataSet.Tables[0].Rows[0];//仅举某一条记录作为例子。
    byte[] photo;
    if(dr["Photo"]!=DBNull.Value) 
    {
    photo=(byte[])dr["Photo"];
    MemoryStream stream=new MemoryStream(photo,0,photo.Length,true);
    Image img=Image.FromStream(stream);
    img.Save(@"C:\1.jpg");
    }
      

  6.   

    DataRow dr = dataSet.Tables[0].Rows[0];
    byte[] photo ;
    if (dr["photo"]!= DBNull.Value)
    {
    photo = (byte[])dr["photo"];
    MemoryStream stream = new MemoryStream (photo ,0 ,photo.Length,true);
    Image img = Image.FormStream(stream);
    img.Save(@"c:\1.jpg");
    }
    !