TCP_client
using System;
以下為發送文字
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.Net.Sockets;
namespace TCP_client
{
class Program
{
public static void Main(string[] args)
{
// 建立一個 IP 位址 (IPAddress)。
IPAddress ipAddr = IPAddress.Parse("192.168.0.43");
IPEndPoint ipep = new IPEndPoint(ipAddr , 1000);
//前者為IP位址,後者為port
Console.WriteLine("IP位址與port: " + ipep);
Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// Socket(執行個體可以使用的位址配置 , 通訊端類型, 指定通訊協定的類別)
server.Connect(ipep); //進行連線
while (true)
{
string input = Console.ReadLine();
if (input == "exit")
break;
byte[] data = Encoding.UTF8.GetBytes(input); //編碼
//byte[] data = Encoding.ASCII.GetBytes(input);
server.Send(data); //送至接收端
}
Console.WriteLine("Disconnecting from server...");
server.Shutdown(SocketShutdown.Both);
/* Shutdown:暫停動作,有以下三種
1.Receive:暫停這個 Socket 上的接收作業。
2.send:暫停這個 Socket 上的傳送作業。
3.Both:同時暫停這個 Socket 上的傳送和接收作業。 */
server.Close(); //關閉連線釋放資源
}
}
}
--------------------------------------------------------------------------------------------------------
以下為發送檔案
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.IO;
namespace TCP_client
{
class Program
{
public static void Main(string[] args)
{
// 建立一個 IP 位址 (IPAddress)。 欲發送位置IP
IPAddress ipAddr = IPAddress.Parse("192.168.0.43");
IPEndPoint ipep = new IPEndPoint(ipAddr , 1000);
//前者為IP位址,後者為port
Console.WriteLine("IP位址與port: " + ipep);
Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// Socket(執行個體可以使用的位址配置 , 通訊端類型, 指定通訊協定的類別)
server.Connect(ipep); //進行連線
string path = "D:\\Blue hills.jpg";
byte[] buffer = File.ReadAllBytes(path);
Console.WriteLine("buffer大小: " + buffer.Length );
while(true)
{
Console.WriteLine("結束輸入exit");
string input = Console.ReadLine();
if (input == "exit")
break;
server.Send(buffer);
}
Console.WriteLine("Disconnecting from server...");
server.Shutdown(SocketShutdown.Both);
server.Close(); //關閉連線釋放資源
}
}
}
以下為發送文字
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.Net.Sockets;
namespace TCP_client
{
class Program
{
public static void Main(string[] args)
{
// 建立一個 IP 位址 (IPAddress)。
IPAddress ipAddr = IPAddress.Parse("192.168.0.43");
IPEndPoint ipep = new IPEndPoint(ipAddr , 1000);
//前者為IP位址,後者為port
Console.WriteLine("IP位址與port: " + ipep);
Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// Socket(執行個體可以使用的位址配置 , 通訊端類型, 指定通訊協定的類別)
server.Connect(ipep); //進行連線
while (true)
{
string input = Console.ReadLine();
if (input == "exit")
break;
byte[] data = Encoding.UTF8.GetBytes(input); //編碼
//byte[] data = Encoding.ASCII.GetBytes(input);
server.Send(data); //送至接收端
}
Console.WriteLine("Disconnecting from server...");
server.Shutdown(SocketShutdown.Both);
/* Shutdown:暫停動作,有以下三種
1.Receive:暫停這個 Socket 上的接收作業。
2.send:暫停這個 Socket 上的傳送作業。
3.Both:同時暫停這個 Socket 上的傳送和接收作業。 */
server.Close(); //關閉連線釋放資源
}
}
}
--------------------------------------------------------------------------------------------------------
以下為發送檔案
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.IO;
namespace TCP_client
{
class Program
{
public static void Main(string[] args)
{
// 建立一個 IP 位址 (IPAddress)。 欲發送位置IP
IPAddress ipAddr = IPAddress.Parse("192.168.0.43");
IPEndPoint ipep = new IPEndPoint(ipAddr , 1000);
//前者為IP位址,後者為port
Console.WriteLine("IP位址與port: " + ipep);
Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// Socket(執行個體可以使用的位址配置 , 通訊端類型, 指定通訊協定的類別)
server.Connect(ipep); //進行連線
string path = "D:\\Blue hills.jpg";
byte[] buffer = File.ReadAllBytes(path);
Console.WriteLine("buffer大小: " + buffer.Length );
while(true)
{
Console.WriteLine("結束輸入exit");
string input = Console.ReadLine();
if (input == "exit")
break;
server.Send(buffer);
}
Console.WriteLine("Disconnecting from server...");
server.Shutdown(SocketShutdown.Both);
server.Close(); //關閉連線釋放資源
}
}
}
留言
張貼留言