
/// 返回文件名
/// </summary>
/// <param name="myFileUpload">上传控件ID</param>
/// <param name="allowExtensions">允许上传的扩展文件名类型,如:string[] allowExtensions = { ".doc", ".xls"乱高租, ".ppt", ".jpg", ".gif" }</param>
/// <param name="maxLength">允许上传的最大大小,以M为单位</param>
/// <param name="savePath">保存文件的目录,注意是绝对路径,如:Server.MapPath("~/upload/")</param>哗兆
public static string Upload(FileUpload myFileUpload, string[] allowExtensions, int maxLength, string savePath)
{
// 文件格式是否允许上传
bool fileAllow = false
//检查是否有文件案
if (myFileUpload.HasFile)
{
// 检查文件大小, ContentLength获取的是字节,转成M的时候要除以2次1024
if (myFileUpload.PostedFile.ContentLength / 1024 / 1024 >= maxLength)
{
throw new Exception("只能上传小于" + maxLength + "M的文件!")
}
//取得上传文件之扩展文件名,并念唤转换成小写字母
string fileExtension = System.IO.Path.GetExtension(myFileUpload.FileName).ToLower()
string tmp = "" // 存储允许上传的文件后缀名
//检查扩展文件名是否符合限定类型
for (int i = 0i <allowExtensions.Lengthi++)
{
tmp += i == allowExtensions.Length - 1 ? allowExtensions[i] : allowExtensions[i] + ","
if (fileExtension == allowExtensions[i])
{
fileAllow = true
}
}
if (fileAllow)
{
try
{
string datedir = DateTime.Now.ToString("yyyyMMdd")
if (!Directory.Exists(savePath + datedir))
{
Directory.CreateDirectory(savePath + datedir)
}
string saveName = Guid.NewGuid() + fileExtension
string path = savePath + datedir + "/" + saveName
//存储文件到文件夹
myFileUpload.SaveAs(path)
return datedir + "/" + saveName
}
catch (Exception ex)
{
throw new Exception(ex.Message)
}
}
else
{
throw new Exception("文件格式不符,可以上传的文件格式为:" + tmp)
}
}
else
{
throw new Exception("请选择要上传的文件!")
}
}
调用:
try
{
string proimg = Niunan.Shop.Utility.Tool.Upload(fuimg, new string[] { ".jpg", ".gif", ".png" }, 3, Server.MapPath("~/upload/"))
}
catch (Exception ex)
{
Response.Write(ex.Message)
}
fileupload文件上传放临时仓库页面怎么展示和下载目标1:向上数据库中增加一条学生信息,同时携带学生照片(文件的上传)目标2:在浏览学生信息时,可以查看学生图片,并提供下载按钮(文件的下载)
1文件的上传
1.1页面展示效果
1.2页面橘御代码编写
<
注意:form表单的提交方式必须是post同时设置enctype属性必须是 multpart/form-data
1.3准备文件上传需要的jar包
1.4后台收文件并保存到指定目录
package
1.5文件上传常见问题圆雀岩处理
问题1 中文文件岁拍名乱码
解决:设置请求编码
默认上传文件大小4096KB,如果要上传超过此大小的文件,会出现错误界面。可知脊禅以对web.config文件做一下配置,就可以解决,解决方法如下:
1、首先创建搭尘一个名称为 file_value 的html文件。
2、添加一个input元素 设置input类型为file设置id为my_file_id_value。
3、添加一个button按钮,在点野数击事件中加入自定义函数my_file_value,添加一p标签,设置id 为 show_file_value。
4、在javascript中创建一个自定义函数 my_file_value。
5、在自定义函数中获取input file对象。用value属性获取fileupload对象上传的文件完全路径,将获取的结果添加到p标签中显示。
6、最后在浏览器中打开文件,点击button查看上传的文件的路径效果。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)