求思路,C#网络socket编程图片的传输问题
最近在做的一个课程设计,刚刚接触到网络编程,有很多地方不是很懂,遇到了一些问题。
简单描述一下,A电脑作为Server端,为一图片服务器,上面有许多图片资源;B,C电脑为Client端。B,C通过socket与A建立连接,然后可以获取A中指定文件夹中的图片资源列表,选中相应的图片后,即可传送到客户端。
注意,是传送到客户端,并不是像FTP那样下载到本地的。就是说图片变为字节流传输,客户端接受字节流,然后直接把图片显示在picturebox中,而不进行下载。
请各位大侠们给点思路,不胜感激啊
------解决方案--------------------你可以搜一下如何把图片变为 byte[] 或者写入 Stream。
------解决方案--------------------思路:服务端将图片转字节流,Socket通信发送这个字节流,客户端收到后还原成图片。
------解决方案--------------------byte[] fb;
OpenFileDialog ofd = new OpenFileDialog();
if (ofd.ShowDialog() == DialogResult.OK)
{
textBox1.Text = ofd.FileName;
fb = File.ReadAllBytes(textBox1.Text);
}
------解决方案--------------------socket传输的本质 是 byte[] 因此任何数据最终需要转换成字节流 Bitmap也不例外 序列化Bitmap
------解决方案--------------------楼主对一些概念不够了解啊,下载就是从服务器到客户端的传输,与存到磁盘无关。
像这样的需求,服务端可以直接使用现成的FTP服务软件,还可以控制权限
客户端编程使用FTP传输方式就好了
------解决方案--------------------
PictureBox.Image本来就有现成的方法跟流交互的多个方法,你都懒得自己搜一下吗?
------解决方案--------------------完整代码可以参考这个博客:
http://www.cnblogs.com/zhaoblogs/archive/2011/11/18/2254196.html