当前位置: 首页 > news >正文

TcpClient 服务器、客户端连接

TcpClient 服务器

TcpListener 搭建tcp服务器的类,基于socket套接字通信的

1 创建服务器对象

TcpListener server = new TcpListener(IPAddress.Parse("127.0.0.1"), 3000);

 2 开启服务器 设置最大连接数

server.Start(1000);

3 接收客户端的链接,只能接收一个 并且会卡死在主线程,
            返回的是一个客户端

TcpClient client = server.AcceptTcpClient();

4 创建一个文件流,接收和发送数据

NetworkStream stream = client.GetStream();

5 发送数据

byte[] buffer = Encoding.UTF8.GetBytes("郑州门诊28元");
stream.Write(buffer, 0, buffer.Length);

6 接收客户端数据

int count = stream.Read(bs, 0, bs.Length);
Console.WriteLine(client.Client.RemoteEndPoint.ToString()+"读取客户端数据为"+Encoding.UTF8.GetString(bs,0,count));

TcpClient 客户端

TcpClient 处理客户端TCP通信的类型

 1 创建客户端对象

TcpClient t1 = new TcpClient();

2 链接服务器

t1.Connect("127
0.0.1", 3000);

3 创建网络基础流 进行发送和接受数据

NetworkStream stream = t1.GetStream();

 4 发送数据

byte[] send = Encoding.UTF8.GetBytes("我信怒天帝在此,何惧世间一切风雨!晚");
stream.Write(send, 0, send.Length);

5 接收数据

byte[] r = new byte[1024];
int count = stream.Read(r, 0, r.Length);
Console.WriteLine(Encoding.UTF8.GetString(r,0,count))

 6 关闭

t1.Close();

效果图如下

相关文章:

  • V4和V6共存的问题
  • 深信服科技:2023网络钓鱼趋势分析报告
  • 2024年保安员职业资格考试真题分享
  • 如何通过 6 种方法从 iPhone 恢复已删除的文件
  • OPenCV中绘制多条多边形曲线函数polylines的使用
  • [面试题]Kafka
  • 看见未来社区:视频孪生技术打造智慧社区
  • 基于Django和Vue的商城管理系统
  • 网页架构实例
  • 服务端⾼并发分布式结构演进之路
  • 品质主管的面试题目
  • Shell脚本、相关命令;重定向、管道符、变量相关命令讲解
  • 基于 Clang和LLVM 的 C++ 代码静态分析工具开发教程
  • 工控 UI 风格美轮美奂
  • HTML中的<a>标签使用指南
  • 深入了解以太坊
  • 【Amaple教程】5. 插件
  • 【跃迁之路】【733天】程序员高效学习方法论探索系列(实验阶段490-2019.2.23)...
  • Akka系列(七):Actor持久化之Akka persistence
  • Angular 4.x 动态创建组件
  • css布局,左右固定中间自适应实现
  • Docker容器管理
  • HTTP 简介
  • javascript 总结(常用工具类的封装)
  • Java多线程(4):使用线程池执行定时任务
  • JS数组方法汇总
  • ubuntu 下nginx安装 并支持https协议
  • Vue小说阅读器(仿追书神器)
  • Vultr 教程目录
  • 动态魔术使用DBMS_SQL
  • 分类模型——Logistics Regression
  • 基于Android乐音识别(2)
  • 基于axios的vue插件,让http请求更简单
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 老板让我十分钟上手nx-admin
  • 爬虫模拟登陆 SegmentFault
  • 如何打造100亿SDK累计覆盖量的大数据系统
  • 如何使用 OAuth 2.0 将 LinkedIn 集成入 iOS 应用
  • 以太坊客户端Geth命令参数详解
  • 异步
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • 阿里云ACE认证之理解CDN技术
  • 浅谈sql中的in与not in,exists与not exists的区别
  • ​Spring Boot 分片上传文件
  • (1)(1.19) TeraRanger One/EVO测距仪
  • (26)4.7 字符函数和字符串函数
  • (SpringBoot)第七章:SpringBoot日志文件
  • (笔记)M1使用hombrew安装qemu
  • (二) Windows 下 Sublime Text 3 安装离线插件 Anaconda
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附源码)ssm教师工作量核算统计系统 毕业设计 162307
  • (免费领源码)python#django#mysql校园校园宿舍管理系统84831-计算机毕业设计项目选题推荐
  • (五)网络优化与超参数选择--九五小庞
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解