WebService 客户端上传图片,服务器端接收图片并保存到本地


需求:如题,C#本地要调用Webservice接口,上传本地的照片到服务器中;

参考:客户端: https://blog.csdn.net/tiegenZ/article/details/79927670

        服务端:   https://www.cnblogs.com/zzzili/archive/2012/12/16/6662668.html

 

       服务端接收的图片是base64编码的字节流:

  [WebMethod(Description = "上传图片")]
        public string getImageByte(Byte[] getByte)
        {
            string savaImageName = null;
            try
            {
                DateTime dt = DateTime.Now;
                string sFile = dt.ToShortDateString().ToString();//2005/11/5
                String file = "/images/" + sFile;//   /images/2005/11/5
                if (Directory.Exists(Server.MapPath(file)) == false)//如果文件不存在 则创建
                {
                    Directory.CreateDirectory(Server.MapPath(file));
                }
                savaImageName = file + "/" + dt.ToFileTime().ToString() + ".png";//127756416859912816
                FileStream fs = new FileStream(Server.MapPath(savaImageName), FileMode.Create, FileAccess.Write);
                fs.Write(getByte, 0, getByte.Length);
                fs.Flush();
                fs.Close();
            }
            catch (Exception e)
            { }
            return savaImageName;

        }

    客户端直接添加服务引用,调用相关方法:

       

string strFilePath = @"C:\Users\Administrator\Desktop\2.jpg";    
                FileInfo fi = new FileInfo(strFilePath);
                if (File.Exists(strFilePath))   
                {
                    byte[] b = new byte[fi.Length];
                    System.IO.FileStream fs = fi.OpenRead();
                    fs.Read(b, 0, Convert.ToInt32(fi.Length));
                    WebReference.AppWebService ss = new WebReference.AppWebService();
                    string sr= ss.getImageByte(b);

                }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM