IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> C# Socket网络编程(3) -> 正文阅读

[系统运维]C# Socket网络编程(3)

测试客户端发送数据,服务端接收数据。直接上代码:

服务器端代码如下:

添加引用

using System.Net;

using System.Net.Sockets;

const int BUFFERSIZE = 8192;// 定义缓存大小,8192 字节

Console.WriteLine(“Server is running…”);

TcpListener listener = new TcpListener(new IPAddress(new byte[] { 127, 0, 0, 1 }), 8001);

listener.Start();

Console.WriteLine(“Start Listening…”);

// 获取一个连接,中断方法

TcpClient remoteClient = listener.AcceptTcpClient();

// 打印连接到的客户端信息

Console.WriteLine($“Client Connected, {remoteClient.Client.LocalEndPoint} <—{remoteClient.Client.RemoteEndPoint}”);

// 获得流,并写入buffer 中

NetworkStream streamFromRemote = remoteClient.GetStream();

byte[] buffer = new byte[BUFFERSIZE];

int bytsRead = streamFromRemote.Read(buffer, 0, BUFFERSIZE);

Console.WriteLine($“Reading data, {bytsRead} bytes…”);

//可见,与 AcceptTcpClient()方法 类似,这个 Read()方法也是同步的,

//只有当客户端发送数据的时候,服务端才会读取数据、运行此方法,否则它便会一直等待。

// 获得请求的字符串

string msg = Encoding.Unicode.GetString(buffer, 0, bytsRead);

Console.WriteLine($“Received:{msg}”);

客户端代码如下:

Console.WriteLine(“Client Running …”);

TcpClient client;

try

{

client = new TcpClient();

client.Connect(new IPAddress(new byte[] { 127, 0, 0, 1 }), 8001); // 与服务器连接

// 打印连接到的服务端信息

Console.WriteLine($“Connected !{client.Client.LocalEndPoint}–> {client.Client.RemoteEndPoint}”);

string msg = “\“Test information\””;

NetworkStream streamToServer = client.GetStream();

byte[] buffer = Encoding.Unicode.GetBytes(msg); // 获得缓存

streamToServer.Write(buffer, 0, buffer.Length); // 发往服务器

Console.WriteLine(“Send: {0}”, msg);

// 按 Q 退出

Console.ReadKey();

}

catch (Exception ex)

{

Console.WriteLine(ex.Message);

}

测试如下:

客户端连接到服务端,发送“Test information"字符串,服务器接收该字符串。

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-01-01 14:23:11  更:2022-01-01 14:24:04 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 6:55:54-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码