相关文章推荐

先做一个简单的tcpClient收发功能。
在这里插入图片描述
先简单做一个界面。
引入命名空间:

using System.Net.Sockets;
using System.Net;

其中定义了三个按钮,分别是建立连接,接收和发送。
c#中的tcp通信实质就是Socket通信。

        private void button1_Click(object sender, EventArgs e)
            tcpClient = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            IPAddress ipaddress = IPAddress.Parse("192.168.0.101");
            EndPoint point = new IPEndPoint(ipaddress, 7788);
            tcpClient.Connect(point);//通过IP和端口号来定位一个所要连接的服务器端

建立连接过程也很简单:
新建一个socket对象(IPV4协议,数据流传输、TCP模式)。
设定目标IP,这里目标用的是本机的TCP助手。
设定目标端口,7788是本机TCP助手监听的端口。
调用connect函数连接。
如果网络一切正常,这时候就已经连接成功了。

接收功能即调用Receive函数就可以完成数据的接收。

        private void button2_Click(object sender, EventArgs e)
            byte[] data = new byte[1024];
            //传递一个byte数组,用于接收数据。length表示接收了多少字节的数据
            int length = tcpClient.Receive(data);
            string message = Encoding.UTF8.GetString(data, 0, length);//只将接收到的数据进行转化
            textBox1.Text += message;

发送功能同样调用send函数就可以了。

 private void button3_Click(object sender, EventArgs e)
            string message2 = textBox2.Text;//读取用户的输入
            //将字符串转化为字节数组,然后发送到服务器端
            tcpClient.Send(Encoding.UTF8.GetBytes(message2));

实际效果如图:
在这里插入图片描述
注意Receive函数如果没有数据到来,会一直阻塞,导致程序控件假死,所以一般接收功能都是使用一个单独的线程进行接收。

先做一个简单的tcpClient收发功能。先简单做一个界面。引入命名空间:using System.Net.Sockets;using System.Net;其中定义了三个按钮,分别是建立连接,接收和发送。c#中的tcp通信实质就是Socket通信。 private void button1_Click(object sender, EventArgs e) ... 2.TcpListener类 TcpListener类用来侦听来自TCP网络客户端的连接。可使用TcpClient或Socket来连接TcpListener。可使用IPEndPoint、本地IP地址及端口号或者仅使用端口号,来创建TcpListener。 TcpListen类的属性
前段时间公司项目中遇着需要做文件的远程传输,场景是用户通过网页选择一些文件,然后提交请求到服务器,同时把请求标识传递给本机的TCP文件传输端;服务器收到请求后在服务器端创建任务生成保存文件的路径同时通知文件传输端开始传文件到服务器,当时是同事用C++写的传输端,于是便想何不用NET来实现呢,本来服务端的大部分程序和客户端程序都是用NET写的,于是便有了这篇文章。小生一直是做web开发的,对WinForm技术不胜熟悉,如有不妥还请拍砖。 在NET框架下可以方便的使用tcplistener和tcpclient
TcpClient::TcpClient(EventLoop* loop, const InetAddress& serverAddr, const string& nameArg) : loop_(CHECK_NOTNULL(loop)), connector_(new Connector(loop, serverAdd
本文章向大家介绍C# TCPclient 服务器保持长连接的一种办法(变相的心跳包功能),主要包括C# TCPclient 服务器保持长连接的一种办法(变相的心跳包功能)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Draw...
TcpClient为基于Socket构建的用来进行TCP通信的简单类,主要用于TCP客户端的编写,可以使用同步或者异步。发送接收数据用NetworkStream。很多东西摘录自MSDN
C#语言是一种面向对象的编程语言,非常适合用于开发桌面应用程序。而WPF(Windows Presentation Foundation)是一个用于创建Windows桌面应用程序的UI框架,它提供了丰富的可视化元素和强大的数据绑定功能。 将C#与WPF结合起来使用可以创建功能强大的桌面应用程序,包括上位机应用程序。上位机应用程序通常用于与嵌入式系统或其他设备进行通信,例如通过串口或网络接口发送接收数据。 在C#和WPF中,可以使用SerialPort类来实现串口通信,使用TcpClient和TcpListener类来实现网络通信。通过这些类,可以实现与嵌入式系统或其他设备的数据交换,从而实现上位机应用程序的功能。 此外,WPF还提供了丰富的UI控件和布局管理器,使得开发者可以轻松地创建具有良好用户体验的应用程序。同时,WPF也支持数据绑定和MVVM模式,使得开发者可以更加轻松地管理和维护应用程序的代码。
Django错误 DisallowedHost at / Invalid HTTP_HOST header. You may need to add to ALLOWED_HOSTS. 孤卷残梦饮一池恨: 你还是胆子大些表情包 Arduino修改Serial接收缓冲区大小 地球秩序の破坏神: 补充一下,有可能在这个文件夹中: C:\Users\admin\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino/HardwareSerial.h
 
推荐文章