참고 사이트
http://dobon.net/vb/dotnet/internet/tcpclientserver.html
http://ameblo.jp/tasoh/entry-10274850055.html
먼저 서버
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.IO;
namespace ConsoleApplication4_TCPServer
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("키를 눌러서 서버 실행");
Console.ReadLine();
try
{
int port = 2222;
IPAddress ip = IPAddress.Parse("192.168.10.107");
TcpListener server = new TcpListener(ip, port);
server.Start();
TcpClient client = server.AcceptTcpClient();
IPEndPoint endPoint = (IPEndPoint)client.Client.RemoteEndPoint;
IPAddress address = endPoint.Address;
NetworkStream stream = client.GetStream();
byte[] getData = new byte[256];
MemoryStream ms = new MemoryStream();
//int cnt;
//List<byte[]> bytelist = new List<byte[]>();
//while ((cnt = stream.Read(getData, 0, getData.Length)) > 0)
//{
// bytelist.Add(getData);
//}
////byte[] result = new byte[bytelist.Count];
//string result = "";
//foreach (byte[] bArr in bytelist)
//{
// result += Encoding.UTF8.GetString(bArr);
//}
do
{
int resSize = stream.Read(getData, 0, getData.Length);
ms.Write(getData, 0, resSize);
} while (stream.DataAvailable);
string result = Encoding.UTF8.GetString(ms.ToArray());
Console.WriteLine("수신 결과:{0}", result);
client.Close();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
finally
{
Console.WriteLine("키 누르면 종료");
Console.ReadLine();
}
}
}
}
다음을 클라이언트
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net.Sockets;
namespace ConsoleApplication4_TCPClient
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("키를 누르면 송신처리가 시작됩니다.");
Console.WriteLine("먼저 서버를 구동시켜 주십시오");
Console.ReadLine();
try
{
string ipAddress = "192.168.10.107";
int port = 2222;
TcpClient client =
new TcpClient(ipAddress, port);
string str = "Hello! C# 세월호 참사가 발생한 지 어느덧 한 달. 오늘 3구의 시신이 수습돼 이제 남은 실종자는 20명입니다.";
byte[] tmp = Encoding.UTF8.GetBytes(str);
NetworkStream stream = client.GetStream();
stream.Write(tmp, 0, tmp.Length);
client.Close();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
finally
{
Console.WriteLine("키 누르면 종료");
Console.ReadLine();
}
}
}
}
'프로그래밍언어 > C#' 카테고리의 다른 글
Xamarin Toast메세지 (0) | 2014.08.24 |
---|---|
xamarin 값 저장 (0) | 2014.08.24 |
listview (0) | 2014.06.12 |
thread (0) | 2014.06.10 |
thread.invoke (0) | 2014.06.10 |