ASP.NET 中的上传控件 使用

原创 2007年09月18日 15:33:00
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

/// <summary>
/// MyUpload 的摘要说明
/// </summary>
public class MyUpload
{
private System.Web.HttpPostedFile postedFile = null;
private string savePath = "";
private string[] extension;
private int fileLength = 0;
public string[] filestype ={ "txt", "doc", "gif" };
public MyUpload()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public string Help
{
get
{
string helpstring;
helpstring = "<font size=3>MyUpload myUpload=new MyUpload(); //构造函数";
helpstring += "myUpload.PostedFile=file1.PostedFile;//设置要上传的文件";
helpstring += "myUpload.SavePath=/"e:///";//设置要上传到服务器的路径,默认c://";
helpstring += "myUpload.FileLength=100; //设置上传文件的最大长度,单位k,默认1k";
helpstring += "myUpload.Extension=/"doc/";设置上传文件的扩展名,默认txt";
helpstring += "label1.Text=myUpload.Upload();//开始上传,并显示上传结果";
helpstring += "<font size=3 color=red>";
return helpstring;
}

}

public System.Web.HttpPostedFile PostedFile
{
get
{
return postedFile;
}
set
{
postedFile = value;
}
}

public string SavePath
{
get
{
if (savePath != "") return savePath;
return "c://";
}
set
{
savePath = HttpContext.Current.Server.MapPath("../upimages/") + value;/////////////////////注意这里选取上传文件路径,可以修改成传递参数类型的
}
}

public int FileLength
{
get
{
if (fileLength != 0) return fileLength;
return 1024;
}
set
{
fileLength = value * 1024;
}
}

public string[] Extension
{
get
{
if (extension != null) return extension;
return filestype;
}
set
{
extension = value;
}
}

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

public string Upload()
{
int biaoshi = 0;
if (PostedFile.FileName != "")
{
try
{
string fileName = PathToName(PostedFile.FileName);
for (int i = 0; i < Extension.Length; i++)
{
if (fileName.EndsWith(Extension[i]))
{
biaoshi = 1;
}
}
if (biaoshi != 1)
{
string errs = "";
for (int i = 0; i < Extension.Length; i++)
{
errs = errs + Extension[i] + "/";
}
return "您必须选择" + errs + "类型的文件!";
}
if (PostedFile.ContentLength > FileLength) return "文件太大,超过了限定值!";
PostedFile.SaveAs(SavePath + DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + fileName.Substring(fileName.Length - 4, 4));
return DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + fileName.Substring(fileName.Length - 4, 4);
}
catch (System.Exception exc) { return exc.Message; }
}
return "请选择文件后再进行上传!";
}
}

////////////////////使用例子,直接复制没有修改/////////////////////
string[] filestype ={ "gif", "jpg", "png" };
MyUpload myload = new MyUpload();
myload.PostedFile = File1.PostedFile;
myload.SavePath = "";
myload.FileLength = 1000;
myload.Extension = filestype;
Label1.Text = myload.Upload();
if (Label1.Text.StartsWith("200"))
{
Label2.Text = "upimages/" + Label1.Text;

Label1.Text = "上传更新成功!";

Asp.net_使用FileUpload控件上传文件通用方法分享

FileUpload控件是.net自带的控件,相信大家上传文件的时候在不借助第三方控件时还是非常方便的,现在博主就拿实际项目中总结的通用方法给大家分享一下,相信对初学者还是很有帮助的(ls_man)。...
  • ls_man
  • ls_man
  • 2013年11月08日 16:26
  • 3888

ASP.Net大文件上传组件详解

首先右键单击网站根目录,在弹出的快捷菜单中,选择"添加引用"菜单项,弹出"添加引用",切换到"浏览"找到组件的Dll文件"Bestcomy.Web.Controls.Upload.dll"(本文件可到...
  • yf505261213
  • yf505261213
  • 2013年09月11日 10:09
  • 3472

ASP.NET控件上传图片

使用asp.net控件上传图片是一种比较简单的方式,直接在后台就可以得到图片流,并对流进行上传操作。...
  • mrli113
  • mrli113
  • 2016年11月18日 17:35
  • 414

Asp.Net音频文件上传和播放

一、音频文件上传和播放        在网上找到一个名叫AspNetPager的第三方控件,将AspNetPager.dll文件引用到项目的Bin中。在网页中可直接调用。引用命名空间  usin...
  • shuzhiguoxing
  • shuzhiguoxing
  • 2015年02月10日 11:20
  • 1633

ASP.NET控件FileUpload实现Excel文件内容上传到数据库

实现思路:Excel的内容并不可以直接上传到数据库,所以先将Excel内容读取出来转化为DataSet,然后可以得到DataTable,遍历每一行,存到数据库里就好了。 前台只放了两个控件: ...
  • nest9527
  • nest9527
  • 2017年03月29日 15:45
  • 2723

ASP.NET大文件断点上传

前端代码 //全选 function CheckAll(e, itemname) { var aa = docume...
  • KingCruel
  • KingCruel
  • 2013年02月17日 09:54
  • 3777

Asp.Net FileUpload选择图片后预览,并直接上传

FileUpload选择图片后先预览图片,然后上传。 使用到FileUpload的onchange事件,及使用一般处理程序(.ashx)来预览图片。 func...
  • diguaqiang
  • diguaqiang
  • 2015年05月22日 10:22
  • 2988

asp.net 使用纯jquery上传控件 fineuploader实现多文件上传

做的一个asp.net项目系统中需要用到多文件上传的功能,但是原生的FileUploader不支持一次选择多个文件上传,用户要求一次性选择多个文件一次性批量上传。于是乎在网上找了好多所谓多文件上传的控...
  • lifewahaha
  • lifewahaha
  • 2014年10月20日 18:28
  • 2049

设置webconfig解决ASP.NET上传文件大小限制

使用webconfig的设置解决ASP.NET上传文件大小限制 对于asp.net,默认只允许上传4M文件,增加如下配置,一般可以自定义最大文件大小. //executio...
  • u013938578
  • u013938578
  • 2017年12月20日 13:03
  • 45

ASP.NET文件上传和下载

aspx页面 无标题页
  • u014488113
  • u014488113
  • 2016年12月09日 11:09
  • 778
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ASP.NET 中的上传控件 使用
举报原因:
原因补充:

(最多只允许输入30个字)