使用工具:VS2015

使用语言:c#

作者:Gemini_xujian

参考:siki老师-《丛林战争》视频教程

继上一篇文章内容,这节课讲解一下客户端的接收数据和发送数据。

首先在现有的解决方案下新建项目,命名为TCP客户端。

然后按照跟编写服务器端类似的方式进行编写程序,在这里直接上代码了

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;//引入的命名空间
using System.Net.Sockets;//引入的命名空间
using System.Text;
using System.Threading.Tasks;namespace C_Sharp游戏服务器端编程
{class Program{static void Main(string[] args){Socket serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);//创建一个socket对象,第一个参数表示IP,第二个参数表示使用流(相当于管道),第三个参数表示使用tcp协议//IPAddress ipAdress = new IPAddress(new byte[] { 127,0,0,1 });IPAddress ipAdress = IPAddress.Parse("127.0.0.1");//创建一个ip地址IPEndPoint ipEndPoint = new IPEndPoint(ipAdress, 6789);serverSocket.Bind(ipEndPoint);//绑定IP和端口号serverSocket.Listen(0);//开始监听端口号,参数设置为0表示不对连接数做限制,填其他数字则表示最大连接数Socket clientSocket = serverSocket.Accept();//接收一个客户端的连接string msg = "hello 你好...";byte[] data = Encoding.UTF8.GetBytes(msg);//将字符串转换成byte数组clientSocket.Send(data);//向客户端发送一条信息byte[] dataBuffer = new byte[1024];//创建一个byte数组用来接收数据int count= clientSocket.Receive(dataBuffer);//接收客户端发送过来的数据,返回值是数据长度string msgReceive = Encoding.UTF8.GetString(dataBuffer,0,count);//将接收到的byte数组转换成字符串Console.WriteLine(msgReceive);//在控制台输出一下发送过来的数据Console.ReadKey();clientSocket.Close();//关闭与客户端的连接serverSocket.Close();//关闭自身的连接 }}
}

在解决方案管理器那里将此项目右键生成,然后在内容浏览器打开此文件,在bin/debug目录下找到exe文件,然后启动服务器端,在运行客户端,在客户端会收到服务器端发送过来的一句话,然后再输入一句话发送到服务器端,服务器端可以正常接收到。

unity网络实战开发(丛林战争)-前期知识准备(004-开发TCP客户端的接收数据和发送数据)相关推荐

  1. unity网络实战开发(丛林战争)-前期知识准备(012-UI框架开发)

    使用工具:VS2017,Unity2017.3,DoTween插件 使用语言:c# 作者:Gemini_xujian 参考:siki老师-<丛林战争>视频教程 继上一篇文章内容,这节课讲解 ...

  2. unity网络实战开发(丛林战争)-前期知识准备(011-c#连接数据库并实现增删改查以及sql注入问题)

    使用工具:VS2015,Mysql 使用语言:c# 作者:Gemini_xujian 参考:siki老师-<丛林战争>视频教程 继上一篇文章内容,这节课讲解一下数据库的前期连接准备以及通过 ...

  3. unity网络实战开发(丛林战争)-前期知识准备(010-在服务器端解析数据)

    使用工具:VS2015 使用语言:c# 作者:Gemini_xujian 参考:siki老师-<丛林战争>视频教程 继上一篇文章内容,这节课讲解一下在服务器端解析数据. 首先,同前文类同, ...

  4. unity网络实战开发(丛林战争)-前期知识准备(006-修改服务器端开启异步处理客户端连接请求)

    使用工具:VS2015 使用语言:c# 作者:Gemini_xujian 参考:siki老师-<丛林战争>视频教程 继上一篇文章内容,这节课讲解一下修改服务器开启一步处理客户端连接请求. ...

  5. unity网络实战开发(丛林战争)-前期知识准备(008-粘包和分包及解决方案)

    使用工具:VS2015 使用语言:c# 作者:Gemini_xujian 参考:siki老师-<丛林战争>视频教程 继上一篇文章内容,这节课讲解一下什么是粘包和分包,以及处理粘包和分包问题 ...

  6. unity网络实战开发(丛林战争)-前期知识准备(003-开发服务器端的发送数据和接收数据)

    使用工具:VS2015 使用语言:c# 作者:Gemini_xujian 参考:siki老师-<丛林战争>视频教程 继上一篇文章内容,这节课讲解一下服务器端的发送数据和接收数据. 上篇文章 ...

  7. unity网络实战开发(丛林战争)-正式开发阶段(013-游戏服务器端框架搭建)

    使用工具:VS2015 使用语言:c# 作者:Gemini_xujian 参考:siki老师-<丛林战争>视频教程 继上一篇文章内容,这节课讲解一下游戏服务器端的开发. 01-项目目录结构 ...

  8. unity网络实战开发(丛林战争)-正式开发阶段(014-游戏客户端与服务器端连接搭建)

    使用工具:VS2017,unity3d 使用语言:c# 作者:Gemini_xujian 参考:siki老师-<丛林战争>视频教程 上一篇文章中,我已经把服务器端的框架进行了搭建,接下来, ...

  9. unity网络实战开发(丛林战争)-正式开发阶段(018-声音管理器模块的完善)

    使用工具:VS2017,unity3d 使用语言:c# 作者:Gemini_xujian 参考:siki老师-<丛林战争>视频教程 上一篇文章中,已经完成了注册事件的处理,接下来将完善声音 ...

最新文章

  1. 写出下列数学式对应的python表达式_Python程序设计课后习题答案-第一单元
  2. 关于PHP的 PHP-FPM进程CPU 100%的一些原因分析和解决方案
  3. 五菱宏光s1图片及价格图片_全新五菱宏光S来了,还在念念不忘S1吗?国六机头还颜值在线...
  4. 中国计算机学会CCF推荐国际学术会议和期刊目录-计算机图形学与多媒体
  5. jquery实现checkbox的单选和全选
  6. sqlhelper中事务的简单用法(初学者)
  7. pytorch resnet50_PyTorch终于能用上谷歌云TPU,推理性能提升4倍,我们该如何薅羊毛?...
  8. js基本函数和基本方法
  9. 为什么代码正确却没有爬虫的信息_一位一年多工作经验的程序员问我,为什么545行代码没有执行到?...
  10. 以终端模式连接远程桌面
  11. android反射改theme,全局修改默认字体,通过反射也能做到
  12. 读书笔记之:C++程序设计陷阱
  13. oracle19c报价_官宣:Oracle数据库19c在Oracle Exadata上发布啦!
  14. 睿智的目标检测22——Keras搭建RFBnet目标检测平台
  15. android 点赞 1,Android自定义FloatingText仿点赞+1特效
  16. matlab中矩阵重排列,稀疏矩阵重新排序 - MATLAB Simulink Example - MathWorks 中国
  17. MACOS 苹果系统 微信多开
  18. rs232读取智能电表_智能电表防窃电原理 偷电为什么会被发现
  19. python中x、y=y、x_浅谈 (x, y) = (y, x)
  20. IEC61850笔记--IEC61850应用入门(三)

热门文章

  1. 融云入围「2022 云办公平台 TOP50」,进入「中国协同办公产业图谱」
  2. linux下的c开发工具,4.3.2 Linux下的C开发工具
  3. 计算机考试特殊符号怎么输,特殊符号怎么打出来 -电脑资料
  4. PHP面试技巧——签约和违约需要注意哪些事情?
  5. 【Proteus】:LCD1602仿真实验基于STM32CubeMX
  6. 机器人总动员英语情歌_机器人总动员(WALL·E)中文字幕 下载 SRT ASS_高清电影™...
  7. Java编写简易计算器
  8. Java安全--CC1的补充和CC6
  9. 修改taro-ui的样式,在自定义组件中使用taro-ui,修改ui框架样式
  10. 计算机单机游戏c0005错误,单机游戏安装中出现的错误,我教你解决它!