Передача файла по сети через сокеты - C#
Формулировка задачи:
Мне интересно, как сделать передачу бинарного файла по сети с помощью UDP сокетов. Реализовал функцию чтения байтов из файла. Вот она:
Теперь возникли такие вопрос: как передать эти байты через сокет на другой компьютер?
Как передать понял. Делаю так:
А как принять файл с другого компьютера?
public byte[] ReadFile(string fileName)
{
Stream s = new FileStream(fileName, FileMode.Open);
BinaryReader reader = new BinaryReader(s);
byte[] file = reader.ReadBytes(Convert.ToInt32(s.Length));
return file;
}public byte[] ReadFile(string fileName)
{
Stream s = new FileStream(fileName, FileMode.Open);
BinaryReader reader = new BinaryReader(s);
byte[] file = reader.ReadBytes(Convert.ToInt32(s.Length));
return file;
}
public void Send(string FileName, IPAddress ip, int port)
{
IPEndPoint ippoint = new IPEndPoint(ip, port);
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
s.SendTo(ReadFile(FileName), ippoint);
}
Что, ни у кого нет идей?
Решение задачи: «Передача файла по сети через сокеты»
textual
Листинг программы
public void Listen()
{
UdpClient listenClient = new UdpClient(15000);
IPEndPoint point = new IPEndPoint(IPAddress.Any, 15000);
byte[] message = listenClient.Receive(ref point);
listenClient.Close();
}