网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 大学论文导航 设计下载 最新论文 下载排行 原创论文 论文源代码
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > ASP.net > 正文

asp.net+C#实现文件上传实现代码

来源:http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12
public class CUploadFile

{

/*====================================================

Code By Icyplayer

E-Mail:Icyplayer@126.com

请尊重原创,使用请保留此信息

======================================================*/

/// <summary>



/// 该类实现了文件上传功能,需要指定HtmlInputFile 控件

/// 功能1:可以对文件类型进行限制

/// 功能2:可以对文件大小上限进行限制

///

/// example:

/// CUploadFile up;

/// up = new CUploadFile(HtmlInputFile1);

/// up.SvaePath = "c:\\inetpub\\wwwroot\\upload\\"; //必须指定,保存文件的路径

/// up.AllowExtFile = ".jpg;.gif;"; //允许的类型

/// up.MaxSize = 500 * 1024; //大小限制500k

/// up.NewFileName = "newfile1"; //指定新的文件名,不指定则不修改

/// int errcode = up.Start(); //开始上传

/// string errmsg = up.GetErr(errcode); //获得错误描述信息

/// Response.write(errmsg); //显示错误信息

/// </summary>



System.Web.UI.HtmlControls.HtmlInputFile _scrfile;//HtmlInputFile 控件



string _savepath = "";//保存文件的路径

string _newfilename = "";//文件重命名为

string _newextfile = "";//文件后缀

int _maxsize = 0;//文件大小限制

string _extfile = "";//允许的后缀名,用“;”分割,包含“.”,为空时允许全部文件类型



//构造函数,不指定任何数据

public CUploadFile()

{



}

//构造函数,指定了HtmlInputFile 控件

public CUploadFile(System.Web.UI.HtmlControls.HtmlInputFile scrFile)

{

this.FileSource = scrFile;

}

//构造函数,指定了HtmlInputFile 控件、保存路径,文件名不作修改

public CUploadFile(System.Web.UI.HtmlControls.HtmlInputFile scrFile, string SavePath)

{

this.FileSource = scrFile;

_savepath = SavePath;

_newfilename = scrFile.PostedFile.FileName;

}

//构造函数,指定了HtmlInputFile 控件、保存路径、新的文件名(不包含后缀)

public CUploadFile(System.Web.UI.HtmlControls.HtmlInputFile scrFile, string SavePath,string NewFileName)

{

this.FileSource = scrFile;

_savepath = SavePath;

_newfilename = NewFileName;

}

//准备就绪后,开始上传

public int Start()

{

if(_scrfile.PostedFile.ContentLength == 0)

{

return 504; //no source

}

else if((_scrfile.PostedFile.ContentLength >= _maxsize)&&(_maxsize != 0))

{

return 501; //out of the range

}

else if((_savepath == "")||(_newfilename == ""))

{

return 505; //no filename or path

}



else if(!CheckExt())

{

return 502; //ext is not allow

}



try

{

_scrfile.PostedFile.SaveAs(_savepath + _newfilename + _newextfile);

return 0;

}

catch

{

return 500; //unknow error

}

}

//检测后缀是否符合要求

private bool CheckExt()

{

if(_extfile == "") return true;

string exts = null;

exts = _extfile.Split(new char{'';''});

int i = 0;

for(i=0;i<=exts.GetUpperBound(0);i++)

{

if(exts[i] == _newextfile) return true;

}

return false;

}

//获取或指定HtmlInputFile控件

public virtual System.Web.UI.HtmlControls.HtmlInputFile FileSource

{

get

{

return _scrfile;

}

set

{

string s;

_scrfile = value;

s = _scrfile.PostedFile.FileName;

s = s.Substring(s.LastIndexOf(''.''));

_newextfile = s;

}

}

//调用start()后,若返回值

网学推荐

免费论文

原创论文

设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号