C# UdpClient 发送图片

/*
 * 由SharpDevelop创建。
 * 用户: Changweihua
 * 日期: 2013/6/21
 * 时间: 16:33
 *
 * changweihua@outlook.com
 * http://www.cmono.net
 *
 */
using System;
using System.Drawing;
using System.Net;
using System.Net.Sockets;
using System.IO;
namespace Server1
{
    class Program
    {
        public static void Main(string[] args)
        {
            UdpClient udpClient = new UdpClient(11000);
            try
            {
                while (true)
                {
                    IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);
                    Byte[] receiveBytes = udpClient.Receive(ref RemoteIpEndPoint);//字节数组(二进制),而不是流形式数据
                    Console.WriteLine(DateTime.Now.ToString());
                    using (FileStream fs = File.Create("D:\\"+DateTime.Now.ToString("yyyy-MM-dd-hh-mm-ss")+".jpg"))
                    {
                        fs.Write(receiveBytes, 0, receiveBytes.Length);
                        Console.WriteLine("保存成功");
                    }
                }
            }
            catch (Exception e)
            { Console.WriteLine(e.ToString()); }
                        
            Console.ReadKey(true);
        }
    }
}

/*
 * 由SharpDevelop创建。
 * 用户: Changweihua
 * 日期: 2013/6/21
 * 时间: 16:38
 *
 * changweihua@outlook.com
 * http://www.cmono.net
 *
 */
using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.Net;
using System.Net.Sockets;
using System.IO;
namespace Client1
{
    class Program
    {
        public static void Main(string[] args)
        {
            string s = @"D:\123.jpg";
            Image m = Image.FromFile(s);
            MemoryStream stream = new MemoryStream();
            m.Save(stream, ImageFormat.Jpeg);
            byte[] image = new byte[stream.Length];
            stream.Position = 0;
            stream.Read(image,0,(int)stream.Length);
            stream.Dispose();
                
            UdpClient udpClient = new UdpClient(11001);
                
            do{
                    
                try
                {
                    udpClient.Connect(IPAddress.Parse("172.30.65.12"), 11000); //但是udp是无连接协议
//                  udpClient.Connect("localhost", 11000);也可以使用这个连接方式
                    udpClient.Send(image, image.Length);
                        
                }
                catch  (Exception e)
                {
                    Console.WriteLine(e.ToString());
                }
                Console.WriteLine("任意键继续,Esc退出");
            }while(Console.ReadKey().Key != ConsoleKey.Escape);
        }
    }
}


知识共享许可协议
《C# UdpClient 发送图片》常伟华 创作。
采用 知识共享 署名-相同方式共享 3.0 中国大陆 许可协议进行许可。
  • 多说评论
  • 签名
  • 新浪微博
  • 默认评论
  • Tab Header 5

0 条评论 / 点击此处发表评论

Tab Content 5

开发技术


开发平台和工具

sitemap     150.56ms