我是靠谱客的博主 大方季节,最近开发中收集的这篇文章主要介绍c# tcp显示服务器图片,C#使用Socket实现发送和接收图片的方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

本文实例讲述了C#使用Socket实现发送和接收图片的方法。分享给大家供大家参考。具体如下:

using System;

using System.Collections.Generic;

using System.Text;

using System.Net.Sockets;

using System.Net;

using System.IO;

namespace ConsoleApplication1

{

Class Program

{

static void Main (String[] args)

{

// 1. to create a socket

Socket sListen = new Socket (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

// 2. Fill IP

IPAddress IP = IPAddress.Parse ("127.0.0.1");

IPEndPoint IPE = new IPEndPoint (IP, 4321);

// 3. binding

sListen.Bind (IPE);

// 4. Monitor

Console.WriteLine ("Service is listening ...");

sListen.Listen (2);

// 5. loop to accept client connection requests

while (true)

{

Socket clientSocket;

try

{

clientSocket = sListen.Accept ();

}

catch

{

throw;

}

// send data to the client

//clientSocket.Send (Encoding.Unicode.GetBytes ("I am a server, you there?? !!!!"));

// send the file

byte[] buffer = ReadImageFile ("1.jpg");

clientSocket.Send (buffer, buffer.Length, SocketFlags.None);

Console.WriteLine ("Send success!");

}

}

private static byte[] ReadImageFile (String img)

{

FileInfo fileinfo = new FileInfo (img);

byte[] buf = new byte[fileInfo.Length];

FileStream fs = new FileStream (img, FileMode.Open, FileAccess.Read);

fs.Read (buf, 0, buf.Length);

fs.Close ();

//fileInfo.Delete ();

GC.ReRegisterForFinalize (fileinfo);

GC.ReRegisterForFinalize (fs);

return buf;

}

}

}

客户端接收和保存图片的代码如下:

using System;

using System.Collections.Generic;

using System.Text;

using System.Net.Sockets;

using System.Net;

using System.IO;

namespace ConsoleApplication2

{

Class Program

{

static void Main (String[] args)

{

// 1. to create a socket

Socket S = new Socket (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

// 2. fill in the remote IP

IPAddress IP = IPAddress.Parse ("127.0.0.1");

IPEndPoint IPE = new IPEndPoint (IP, 4321);

Console.WriteLine ("started connection service ....");

// 3. connect to the server

s.Connect (IPE);

// 4. receive data

byte[] buffer = new byte[1000000];

s.Receive (buffer, buffer.Length, SocketFlags.None);

//var Msg = Encoding.Unicode.GetString (buffer);

//Console.WriteLine ("received message: (0)", msg);

Console.WriteLine ("Receive success");

FileStream fs = File.Create ("1.jpg");

fs.Write (buffer, 0, buffer.Length);

fs.Close ();

Console.ReadKey ();

}

}

}

希望本文所述对大家的C#程序设计有所帮助。

最后

以上就是大方季节为你收集整理的c# tcp显示服务器图片,C#使用Socket实现发送和接收图片的方法的全部内容,希望文章能够帮你解决c# tcp显示服务器图片,C#使用Socket实现发送和接收图片的方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(61)

评论列表共有 0 条评论

立即
投稿
返回
顶部