/// <summary>
/// 上传文件
/// </summary>
/// <param name="path">将文件上传到服务器的路径</param>
/// <param name="fileupload">上传文件的控件名称</param>
public partial class UpFile : System.Web.UI.Page
{
public void Upload(string path,System .Web .UI.WebControls .FileUpload fileupload)
{
bool fileOk = false; //s设置布尔值,并且将初始值为false;
if (fileupload.HasFile)
{
string fileException = System.IO.Path.GetExtension(fileupload .FileName ).ToLower ();//将上传的文件名转小写字母
//上传文件格式
string[] alloweException = { ".xls", ".doc", ".mpp", ".rar", ".zip",".vsd", ".txt", ".jpg", ".gif", ".bmp", ".png", ".swf", ".avi", ".mp3",".rm", ".wma", ".wmv" };
for (int i = 0; i < alloweException.Length; i++)
{
if (fileException == alloweException[i])
fileOk = true; //返还成功标志
}
}
if (fileOk) //判断上传的文件是否在指定格式范围内
{
//判断文件是否存在,不存在则创建路径
if (System.IO.Directory.Exists(path))
{
//该目录存在则将文件上传到该目录当中
}
else
{
System.IO.Directory.CreateDirectory(path);//创建目录
}
fileupload.SaveAs(path + "\\" + fileupload.FileName);//执行上传操作
}
else
{
Page.RegisterStartupScript("ss", "<script>alert('格式不正确或不支持')</script>");
//throw new Exception("格式不正确或不支持!");
}
}
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
string filepath = "";//声明一个字符变量
//是否有上传文件
if (this.FileUpload1.FileName != null && this.FileUpload1.FileName != "")
{
if (FileUpload1.PostedFile.ContentLength <= 0)
{
Page.RegisterStartupScript("ss", "<script>alert('上传文件为空,请重新选择!')</script>");
return;
}
else
{
if (FileUpload1.HasFile)
{
if (FileUpload1.PostedFile.ContentLength > 40000)//字节单位 不超过4mb
{
Page.RegisterStartupScript("ss", "<script>alert('上传文件超过4MB')</script>");
return;
}
else
{
filepath = Server.MapPath("~/wenjian");//设置服务器文件路径
}
//调用 Upload方法
Upload(filepath, this.FileUpload1);
Page.RegisterStartupScript("ss", "<script>alert('上传成功!')</script>");
}
}
}
//如果上传文件错误,则返回操作
else
{
Page.RegisterStartupScript("ss", "<script>alert('上传文件路径错误!')</script>");
return;
}
}
}
在服务器端是无法判断文件大小的,也就是你上面的代码再改也无法判断文件大小。
可以用js来获取文件大小的信息增加友好的交互。
这个是我搜索的链接http://zzk.cnblogs.com/so.aspx?w=js+%E6%96%87%E4%BB%B6%E5%A4%A7%E5%B0%8F&t=
希望能帮助到你。
谢谢 提供参考资料 呵呵。。。
应该是在页面的配置文件中修改一个属性就可以了,这个问题我也遇到过,不过好久没做bs项目了,你在网上找找这个属性,只需要把那个上传大小改到最大就可以了!希望对你有帮助、
他是想检测上传文件的大小,不是改变上传文件大小的限制。
谢谢 给指点
JS判断文件大小
嗯 。。。