C#向特定的端口发送信息,并在相应的端口接收数据
我学java比较多,突然说要用C#实现:向特定的端口发送信息,并在相应的端口接收数据显示出来,对C#研究不是很多。要求用窗体的形式实现。哪位高手指教,谢谢~...
我学java比较多,突然说要用C#实现 :向特定的端口发送信息,并在相应的端口接收数据显示出来,对C#研究不是很多。要求用窗体的形式实现。哪位高手指教,谢谢~
展开
3个回答
展开全部
用tcp或者udp都可以 下面是udp
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Net.Sockets;
using System.Threading;
namespace liaotian
{
public partial class Form1 : Form
{
private UdpClient uc;
private IPEndPoint iep;
private Thread th;
public Form1()
{
InitializeComponent();
CheckForIllegalCrossThreadCalls = false;
uc = new UdpClient(8888);
}
private void button1_Click(object sender, EventArgs e)
{
iep = new IPEndPoint(IPAddress.Parse(ip.Text), 8888);
string temp = jieshou.Text;
byte[] b = Encoding.UTF8.GetBytes(temp);
uc.Send(b, b.Length, iep);//发送数据
}
private void listen()//监听
{
while (true)
{
string text = Encoding.UTF8.GetString(uc.Receive(ref iep));//返回接受的数据
jieshou.Items.Add(text + "\n");
}
}
private void Form1_Load(object sender, EventArgs e)
{
iep = new IPEndPoint(IPAddress.Parse(ip.Text), 8888);
th = new Thread(new ThreadStart(listen));//线程
th.IsBackground = true;
th.Start();
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Net.Sockets;
using System.Threading;
namespace liaotian
{
public partial class Form1 : Form
{
private UdpClient uc;
private IPEndPoint iep;
private Thread th;
public Form1()
{
InitializeComponent();
CheckForIllegalCrossThreadCalls = false;
uc = new UdpClient(8888);
}
private void button1_Click(object sender, EventArgs e)
{
iep = new IPEndPoint(IPAddress.Parse(ip.Text), 8888);
string temp = jieshou.Text;
byte[] b = Encoding.UTF8.GetBytes(temp);
uc.Send(b, b.Length, iep);//发送数据
}
private void listen()//监听
{
while (true)
{
string text = Encoding.UTF8.GetString(uc.Receive(ref iep));//返回接受的数据
jieshou.Items.Add(text + "\n");
}
}
private void Form1_Load(object sender, EventArgs e)
{
iep = new IPEndPoint(IPAddress.Parse(ip.Text), 8888);
th = new Thread(new ThreadStart(listen));//线程
th.IsBackground = true;
th.Start();
}
}
}
追问
using System.Linq;
报错,说没有这个包(可以说是包吧)
ip.Text 输入ip的格式是怎么样的呢?
追答
ip是个文本控件!格式就是11.1.1.1 把哪个linq空间删除就好了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
TCP
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
网上很多例子
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询