socket编程:简单的TCP客户端
2013-02-21 21:01
387 查看
既然我们已经有了一个TCP服务器,因此可以创建 一个简单的TCP客户机与它进行通信。创建与TCP服务器相连 的客户机只有两 步
1.创建一个套接字
2.将套接字与远程服务竭地址相连
创建客户机如同服务器编辑一样,进行客户机程序设计的第 一步是创建一个Socket对象.SocketConnect()使用这个Socket对象将所创建的套接字与远程主机相连:这个例子试图将套接字与位于IP地址为192.168.0.106的机器上的服务器相连.当然也可以与Dns.Resolve()一样使用主机名。也许可能注意到在服务器的编程中,没有使用任何异常处理方法,在客户端的程序设计中,就不能这样了.对于客户机的Connect()来说,最大的挑战就是如果远程服务器不能使用,将会产生异常情况,对于顾客来说将导致错误消息.解决这个问题较好的方法是在使用Connect()方法时用try-catch块来获取SocketExceptions,从而可以为顾客提供非常友好的提示.一旦远程的服务器TCP程序接收到连接请求,客户机程序就准备使用标准的Send()和Receive()方法同服务器传送数据.
1.创建一个套接字
2.将套接字与远程服务竭地址相连
创建客户机如同服务器编辑一样,进行客户机程序设计的第 一步是创建一个Socket对象.SocketConnect()使用这个Socket对象将所创建的套接字与远程主机相连:这个例子试图将套接字与位于IP地址为192.168.0.106的机器上的服务器相连.当然也可以与Dns.Resolve()一样使用主机名。也许可能注意到在服务器的编程中,没有使用任何异常处理方法,在客户端的程序设计中,就不能这样了.对于客户机的Connect()来说,最大的挑战就是如果远程服务器不能使用,将会产生异常情况,对于顾客来说将导致错误消息.解决这个问题较好的方法是在使用Connect()方法时用try-catch块来获取SocketExceptions,从而可以为顾客提供非常友好的提示.一旦远程的服务器TCP程序接收到连接请求,客户机程序就准备使用标准的Send()和Receive()方法同服务器传送数据.
static void Main(string[] args) { int recv; byte[] data = new byte[1024]; string input, strData; Socket socketClient = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); IPEndPoint ipServer=new IPEndPoint(IPAddress.Parse("127.0.0.1"),19050); try { socketClient.Connect(ipServer); } catch (Exception ex) { Console.WriteLine("can not connect server"); Console.WriteLine(ex.ToString()); return; } recv = socketClient.Receive(data); strData = Encoding.Default.GetString(data, 0, recv); Console.WriteLine(strData); while (true) { input = Console.ReadLine(); if (input == "exit") break; socketClient.Send(Encoding.Default.GetBytes(input)); data = new byte[1024]; recv = socketClient.Receive(data); strData = Encoding.Default.GetString(data, 0, recv); Console.WriteLine(strData); } Console.WriteLine("Disconnecting from server......"); socketClient.Shutdown(SocketShutdown.Both); socketClient.Close(); }
相关文章推荐
- 简单的TCP协议 socket编程(C语言版服务器和客户端)
- VC++ Socket编程 简单的Tcp/ip客户端
- 【网络编程笔记】简单的TCP协议 socket编程(C语言版服务器和客户端)
- TCP/TP编程 - 一个简单的Linux下C写的socket服务器客户端程序
- 01 TCP Socket 编程_一个简单的服务端程序和客户端程序实现
- socket编程:简单TCP服务器/客户端编程
- VC++ Socket编程 简单的Tcp/ip客户端
- VC++ Socket编程 简单的Tcp/ip客户端
- 简单的TCP协议 socket编程(C语言版服务器和客户端)
- socket编程:简单TCP服务器/客户端编程
- 【socket编程】 一个简单的基于TCP连接的客户端、服务端用例
- 【C++】Winsock套接字编程,简单的socket通信代码(客户端、服务端)
- (第三季)601-socket编程-tcp服务器端;602-socket编程-tcp客户端
- [网络编程]——TCP_Socket通信_聊天室_客户端多线程
- iOS网络编程实践--NSStream实现TCP Socket iPhone客户端
- iOS网络编程实践--NSStream实现TCP Socket iPhone客户端
- 我所不知道的TCP Socket编程(四)-客户端生命周期
- Linux下socket编程之TCP简单实现
- socket编程实现简单DNS协议实现获取域名ip(TCP)
- python socket简单tcp服务器客户端