zoukankan      html  css  js  c++  java
  • C# TCP 通讯

    //接收

    using System;

    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.IO;
    using System.Linq;
    using System.Net;
    using System.Net.Sockets;
    using System.Text;
    using System.Threading;
    using System.Threading.Tasks;
    using System.Windows.Forms;


    namespace TcpReceiver
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
                Thread th = new Thread(new ThreadStart(RecvData));
                th.Start();
            }


            private void RecvData()
            {
                IPAddress localAddr = IPAddress.Parse("127.0.0.1");
                int port = 10001;


                TcpListener listener = new TcpListener(localAddr, port);
                listener.Start();
                TcpClient client = listener.AcceptTcpClient();
                NetworkStream ns = client.GetStream();

                StreamReader sr = new StreamReader(ns);
                string result = sr.ReadToEnd();
                Invoke(new UpdateDisplayDelegate(UpdateDisplay), new Object[] { result });
                client.Close();
                listener.Stop();
            }


            delegate void UpdateDisplayDelegate(string text);

            void UpdateDisplay(string text)
            {
                txtRecv.Text = text;
            }
        }

    }


    //发送

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.IO;
    using System.Linq;
    using System.Net.Sockets;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;


    namespace TcpExam
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }


            private void btnSend_Click(object sender, EventArgs e)
            {
                TcpClient client = new TcpClient(txtHost.Text, int.Parse(txtPort.Text));
                NetworkStream ns = client.GetStream();
                FileStream fs = File.Open("Form1.cs",FileMode.Open);

                int t = fs.ReadByte();
                while (t != -1)
                {
                    ns.WriteByte((byte)t);
                    t = fs.ReadByte();
                }
                fs.Close();
                ns.Close();
                client.Close();
            }
        }
    }

  • 相关阅读:
    vue自定义指令clickoutside使用以及扩展用法
    抓包工具Charles的使用教程
    vue之element-ui文件上传
    Vue省市区三级联选择器V-Distpicker的使用
    Vue如何封装多个全局过滤器到一个文件
    vue工程中使用iconfont在线CDN不生效的问题
    es6 Null 传导运算符
    js中布尔值为false的六种情况
    vue-vli3创建的项目配置热更新
    js思维导图
  • 原文地址:https://www.cnblogs.com/dxmfans/p/9434765.html
Copyright © 2011-2022 走看看