Dzwebs.Net

撰写电脑技术杂文十余年

使用webservice上传文件的示例代码

Admin | 2009-4-27 19:53:52 | 被阅次数 | 10277

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  ASPX页面所需控件:一个FileUpload 控件,一个Button(btnUpload);

  一、ASPX页面Button的事件代码

  protected void btnUpload_Click(object sender, EventArgs e)
  {   
        /**/////获得上传文件的名称
        //FileInfo file = new FileInfo(fileUpload.PostedFile.FileName);

        //将上传的文件转换为二进制流
        byte[] fileContent = fileUpload.FileBytes;
        //获得上传文件的名称
        string fileName = fileUpload.FileName;
        //实例化webservice
        AdService.Service adTemp = new AdService.Service();
        if (adTemp.UploadFile(fileContent, fileName)) //调用上传方法。
        {
            Response.Write("已上传成功");
        }
        else
        {
            Response.Write("上传图片发生未知错误");
        }

  }

  二、WebService代码

  新建一个WebService项目,WebService文件名称为AdService.asmx;

  [WebMethod(Description = "WebService上传文件代码")]   
  public bool UploadFile(byte[] fs, string fileName)
  {
        try
        {
            /**////定义并实例化一个内存流,以存放提交上来的字节数组。
            System.IO.MemoryStream m = new System.IO.MemoryStream(fs);
            //取出存放地址,可以通过数据库里存放,不用定死了。此处只是做DEMO。

   //将文件保存在网站虚拟目录中,请自行修改路径
            string strFile = Server.MapPath("MyFiles\\" + FileName);
            /**////定义实际文件对象,保存上载的文件。
            System.IO.FileStream fl = new System.IO.FileStream(strFile, FileMode.OpenOrCreate);
            /**////把内内存里的数据写入物理文件
            m.WriteTo(fl);           
            m.Close();
            fl.Close();
            m = null;
            fl = null;
            return true;
        }
        catch
        {
            return false;
        }

  }


网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231