using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
namespace ToyClient
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
try
{
//TCP Echo Client
//1. 종단점 생성
IPAddress ip = IPAddress.Parse("127.0.0.1");
IPEndPoint endPoint = new IPEndPoint(ip,5000);
//2. TCP Socket 생성
Socket socket = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
//3. 연결하기
Console .Write ("엔터를 치시면 서버와 연결됩니다.");
Console.ReadLine();
socket.Connect(endPoint);
//4. 데이터 송수신
if (socket.Connected)//서버측에서 소켓이 만들어져 있는지 확인
{
while(true)
{
Console.WriteLine("상대방종점값 : "+socket.RemoteEndPoint.ToString());
Console.WriteLine("자신의종점값 : "+socket.LocalEndPoint.ToString());
Console.Write ("보낼 문자열 : ");
string input = Console.ReadLine();
byte[] inputBuffer = Encoding.UTF8.GetBytes(input);
//송신
socket.Send(inputBuffer,0,inputBuffer.Length,SocketFlags.None);
Console.WriteLine("에코 기다리는중..");
//수신
byte[] receiveBuffer = new byte[512];
socket.Receive(receiveBuffer,0,receiveBuffer.Length,SocketFlags.None);
string result = Encoding.UTF8.GetString(receiveBuffer,0,receiveBuffer.Length);
Console.WriteLine("받은 문자열 : " + result);
}
socket.Close();
}
else
{
Console.WriteLine("소켓 연결 실패!!");
}
}
catch(Exception e)
{
Console.WriteLine("오류 발생 : " + e.Message);
}
}
}
}
'네트워크' 카테고리의 다른 글
C# 비동기 클라이언트 소켓서버 (0) | 2013.05.14 |
---|---|
C# TCP 소켓통신 Server (0) | 2013.04.25 |
SuperSocket (0) | 2013.04.25 |
C# 비동기 소켓 (Asynchronous Socket) 방식 간단한 채팅 서버 & 클라이언트 (0) | 2013.04.24 |
thread를 이용한 다중클라이언트 연결서버 (0) | 2013.04.24 |