我用c#+sqlserver2000  做c/s下的程序,图片在数据库以什么形式存放比较好?是二进制还是相对路径?具体该怎么做啊?谢谢大家了!!!如果是二进制,开始怎么在数据库中给它赋值啊?

解决方案 »

  1.   

    要点是把文件转换成字节数组存到数据库的Image类型字段里具体请参阅http://blog.csdn.net/ki1381/archive/2007/03/02/1519669.aspx
      

  2.   

    Image类型字段也就是个指针,指向存对应信息的位置的。 
    存到数据库,就管理方便点,其他我不觉得有啥好处。
      

  3.   

    如果对速度要求不高,就直接用图像控件的自动缩放功能。如果图像与控件的宽高比例不正确,并且希望显示正确的比例多余的地方留白或留黑,就需要自己缩放,方法是申明不安全的函数,使用指针将图像转换成数组,进行缩小运算后再转成bitmap进行显示,很快,每次转换0.15"(1.6G双核,内存2G,xp sp2,vs2005)。完成以后好像可以直接将bitmap存储到数据库的字段,在其它语言里我试过,但是C#里没做。
      

  4.   

    MemoryStream stream = new MemoryStream();
    stream.Write(mydata, 0, mydata.Length);
    Image myImage = Image.FromStream(stream);myImage.Save(stream, System.Drawing.Imaging.ImageFormat.Jpeg);  //都存成jpg
    this.pictureBox1.Image = myImage;                             //显示
    this.pictureBox1.Refresh();mydata是个2进制数组 存的是图片的2进制值
      

  5.   

    文件有个matefilehead之类的东西,可以用于判断!