首页 / C# / c#-网络-Socket-简单实验
c#-网络-Socket-简单实验
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c#-网络-Socket-简单实验,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2441字,纯文字阅读大概需要4分钟。
内容图文
![c#-网络-Socket-简单实验](/upload/InfoBanner/zyjiaocheng/605/e771617e90fa4fbe942d71383ff5180c.jpg)
1.概要
1.1 服务端
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
socket.Bind(new IPEndPoint(IPAddress.Any, 2112));
socket.Listen(10);
Socket socket1 = socket.Accept();
int num = socket1.Receive(receivedBytes);
socket1.Send(replyMessage);
1.2 客户端
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
socket.Connect(iPEndPoint);
socket.Send(forwardMessage);
int num = socket.Receive(receivedBytes);
2 代码
2.1 代码-服务端
using System;
using System.Net;
using System.Net.Sockets;
using System.IO;
using System.Text;
namespace ConsoleApp9
{
class Program
{
delegate void updateDisplayDelegae(String text);
static void Main(string[] args)
{
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
socket.Bind(new IPEndPoint(IPAddress.Any, 2112));
socket.Listen(10);
while (true) {
Console.WriteLine("");
Socket socket1 = socket.Accept();
String receivedValue = string.Empty;
while (true) {
Byte[] receivedBytes = new Byte[1024];
int num = socket1.Receive(receivedBytes);
Console.WriteLine("receiveing .");
receivedValue += Encoding.ASCII.GetString(receivedBytes, 0, num);
if (receivedValue.IndexOf("FINAL") > -1) {
break;
}
}
Console.WriteLine("receivedValue:{0}", receivedValue);
string replyValue = "message successfully received.";
byte[] replyMessage = Encoding.ASCII.GetBytes(replyValue);
socket1.Send(replyMessage);
socket1.Shutdown(SocketShutdown.Both);
}
socket.Close();
Console.ReadKey();
}
}
}
2.2 代码-客户端
using System;
using System.Net.Sockets;
using System.IO;
using System.Net;
using System.Text;
namespace ConsoleApp10
{
class Program
{
static void Main(string[] args)
{
byte[] receivedBytes = new byte[1024];
IPHostEntry iPHostEntry = Dns.Resolve("127.0.0.1");
IPAddress iPAddress = iPHostEntry.AddressList[0];
IPEndPoint iPEndPoint = new IPEndPoint(iPAddress, 2112);
Console.WriteLine("Starting: ceating socket object");
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
socket.Connect(iPEndPoint);
Console.WriteLine("");
string sendingMessage = "hello word service";
byte[] forwardMessage = Encoding.ASCII.GetBytes(sendingMessage+ "[FINAL]");
socket.Send(forwardMessage);
int num = socket.Receive(receivedBytes);
Console.WriteLine("收到的数据:{0}",Encoding.ASCII.GetString(receivedBytes,0,num));
socket.Shutdown(SocketShutdown.Both);
socket.Close();
Console.ReadKey();
}
}
}
3.运行结果
内容总结
以上是互联网集市为您收集整理的c#-网络-Socket-简单实验全部内容,希望文章能够帮你解决c#-网络-Socket-简单实验所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。