• 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();
            }
        }
    }

  • 相关阅读:
    【白嫖】0002 11款 Procreate 皮肤纹理笔刷
    30款 Procreate 书法笔刷 你值得拥有
    PaddleHub(3)
    PaddleHub(2)
    关于大学学习的小思考
    PaddleHub(1)
    OO TA——一次非同寻常的体验
    Vue实现增加删除检索数据
    闲言碎语
    析 合 树 详 解
  • 原文地址:https://www.cnblogs.com/dxmfans/p/9434765.html
Copyright © 2020-2023  润新知