一个简单的上传类

一直以来,很多项目都要求上传,每次都要写上传的代码,比较麻烦。便想写一个类来完成上传的任务,以便在开发中减轻负担。写的很简单,但确实实用^_^

 

using System;
using System.Web;
using System.IO;
using System.Text;

namespace upfile
{
 ///


 /// upfile类完成文件的上传和删除功能
 ///

 public class MyUpload
 {
  private System.Web.HttpPostedFile postedFile=null;
  private string savePath="";
  private string extension="";
  private int fileLength=0;
//上传控件
  public System.Web.HttpPostedFile PostedFile
  {
   get
   {
    return postedFile;
   }
   set
   {
    postedFile=value;
   }
  }


        //存储路径
  public string SavePath
  {
   get
   {
    if(savePath!="") return savePath;
    return "C://";
   }
   set
   {
    savePath=value;
   }
  }


        //文件大小
  public int FileLength
  {
   get
   {
    if(fileLength!=0)
    {
     return fileLength;
    }
    return 1024;
   }
   set
   {
    fileLength=value*1024;
   }
  }


        //文件格式
  public string Extension
  {
   get
   {
    if(extension!="")
    { 
     return extension;
    }
    return "";
   }
   set
   {
    extension=value;
   }
  }


       
  public string PathToName(string path)
  {
   int pos=path.LastIndexOf("//");
   return path.Substring(pos+1);
  }


        //上传文件
  public string Upload()
  {
   if(PostedFile!=null)
   {
    try
    {
     string fileName=PathToName(PostedFile.FileName);
     if(!fileName.EndsWith(Extension))
     {
      return "你必须选择 "+Extension+" 这个格式的文件!";
     }
     if(PostedFile.ContentLength>FileLength)
     {
      return "文件太大!";
     }
     if(File.Exists((SavePath+"
//"+fileName)))
     {
      return "文件名重复!";
     }
     else
     {
      PostedFile.SaveAs(SavePath+"
//"+fileName);
      return "上传文件成功!";
     }
    }
    catch(System.Exception exc)
    {
     return exc.Message;
    }
   }
   return "请选择文件上传!";
  }

  //显示文件名
  public string upfilename()
  {
   string fileName=PathToName(PostedFile.FileName);
   return fileName;
  }

  //显示详细路径
  public string url()
  {
   string fileName=PathToName(PostedFile.FileName);
   string urls=SavePath+"
//"+fileName;
   return urls;
  }

  //删除上传的文件
  public string delete(string url)
  {
   
    try
    {
     
       File.Delete(url);
       return "删除文件成功!";
     
    }
    catch(System.Exception exc)
    {
     return exc.Message;
    }
   
     }


 }
}

 

 


使用方法:
1.在引用里添加upfile.dll的引用
2.using upfile;
3.private MyUpload myupfile;
4.myupfile=new MyUpload();    //实例化
  myupfile.PostedFile=this.File1.PostedFile;     //设置上传控件
  myupfile.SavePath=Server.MapPath("");          //设置上传路径
 
5.上传按钮:
     this.Label2.Text=myupfile.Upload(); //上传
   if(this.Label2.Text=="上传文件成功!")
   {
    this.upfile.Text=myupfile.upfilename();  //显示文件名
    this.url.Text=myupfile.url();         //显示文件路径
   }
  
6.删除按钮:
     this.Label2.Text=myupfile.delete(this.url.Text);
   if(this.Label2.Text=="删除文件成功!")
   {
    this.upfile.Text="";  //显示文件名
    this.url.Text="";         //显示文件路径
   }
      
      
      
 aspx:

(<form id="Form1" method="post" runat="server" enctype="multipart/form-data">
 
 <INPUT id="File1" style="Z-INDEX: 102; LEFT: 304px; POSITION: absolute; TOP: 184px" type="file"
     name="File1" runat="server">)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值