各位哥!问一个C#的网络传输有关问题。代码很少!帮小弟我看上好吗?
各位哥!问一个C#的网络传输问题。代码很少!帮我看下好吗??
先说代码:是这样的,我有一个发送端和一个接受端,发送端发送一个图片,接受端接受图片。
问题来了!:接受端接受到了图片,而且大小和发送端那边的本地图片文件一样大。但就是接受过来的图片是损坏的。是那个环节出问题了呢?还是哪些理论上错误的呢?先谢谢各位大哥了!
这个是接受端
下面这个是服务端,监听连接,一旦有连接,就给对方发送图片 。
问题是:接受过来的图片是损坏的。各位大哥指点一下。
------解决方案--------------------
先说代码:是这样的,我有一个发送端和一个接受端,发送端发送一个图片,接受端接受图片。
问题来了!:接受端接受到了图片,而且大小和发送端那边的本地图片文件一样大。但就是接受过来的图片是损坏的。是那个环节出问题了呢?还是哪些理论上错误的呢?先谢谢各位大哥了!
这个是接受端
- C# code
static void Main(string[] args) { TcpClient tcp = new TcpClient(); tcp.Connect("127.0.0.1", 9000); NetworkStream str = tcp.GetStream(); byte[] byy=new byte[8*1024]; System.IO.FileStream fs = new System.IO.FileStream("(1).jpeg", System.IO.FileMode.Create, System.IO.FileAccess.Write); while(true) { int a = str.Read(byy, 0, byy.Length); if (a > 0) fs.Write(byy, 0, a); else break; } fs.Close(); str.Close(); string s = Console.Read().ToString(); }
下面这个是服务端,监听连接,一旦有连接,就给对方发送图片 。
- C# code
IPAddress ip = IPAddress.Parse("127.0.0.1"); TcpListener conn = new TcpListener(ip, 9000); conn.Start(); TcpClient tcp = conn.AcceptTcpClient(); FileStream fs = File.OpenRead("2012-08-04_15_58_25.Jpeg"); byte[] fsdata = new byte[fs.Length]; NetworkStream str = tcp.GetStream(); str.Write(fsdata, 0, fsdata.Length); str.Close(); fs.Close(); string s = Console.Read().ToString();
问题是:接受过来的图片是损坏的。各位大哥指点一下。
------解决方案--------------------