Client端代码(因为都差不多 就只贴一个了)
namespace SocketClient
{
class Program
{
private static byte[] result = new byte[1024];
private static Socket clientSocket;
private static void ListenServer()
{
while (true)
{
result = new byte[1024];
int receiveLength = clientSocket.Receive(result);
Console.WriteLine("{0}", Encoding.ASCII.GetString(result, 0, receiveLength));
}
}
static void Main(string[] args)
{
IPAddress ip = IPAddress.Parse("127.0.0.1");
clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
try
{
clientSocket.Connect(ip, 8885);
Console.WriteLine("连接成功!");
}
catch (Exception e)
{
Console.WriteLine("连接失败!");
return;
}
Thread threadRead = new Thread(ListenServer);
threadRead.Start();
while(true)
{
try
{
Thread.Sleep(1000);
string sendMessage = Console.ReadLine();
clientSocket.Send(Encoding.ASCII.GetBytes("Sylvia:"+sendMessage));
}
catch (Exception ex)
{
clientSocket.Shutdown(SocketShutdown.Both);
clientSocket.Close();
break;
}
}
Console.WriteLine("发送完毕 按回车退出");
Console.ReadKey();
}
}
}
写的时候要特别注意一下Send信息的时候,注意byte[]的传输大小,很容易变成byte[]数组的大小而不是内容的大小。
这个大家就自己尝试吧。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持ASPKU。
注:相关教程知识阅读请移步到c#教程频道。










