问答1 问答5 问答50 问答500 问答1000
网友互助专业问答平台

C#使用HTML文件中的file文件上传 (如何用C#代码接收上传的文件)

提问网友 发布时间:2022-04-21 03:22
声明:本网页内容为用户发布,旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:1656858193@qq.com
2个回答
热心网友 回答时间:2023-11-04 23:42
凉快,

热心网友 回答时间:2023-11-04 23:43
调用方式:
AllSheng.upload UpFiles = new AllSheng.upload();
HttpFileCollection files = HttpContext.Current.Request.Files;
UpFiles.Path = "../UpLoadfiles";
String ReStr= UpFiles.SaveAs(files).ToString();

AllSheng类文件:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
/**//// <summary>
/// Cls_Upfile 的摘要说明
/// </summary>
///
namespace AllSheng
{
public class upload
{
变量#region 变量
System.Web.HttpPostedFile postedFile;
protected string localFileName;//原文件名(含扩展名)
protected string localFileExtension;//原扩展名
protected long localFileLength;//原文件大小
protected string localFilePath;//原文件路径
protected string saveFileName;//保存的文件名(含扩展名)
protected string saveFileExtension;//保存的扩展名
//protected long saveFileLength;//保存的文件大小
protected string saveFilePath;//保存文件的服务器端的完整路径
protected string saveFileFolderPath;//保存文件的服务器端的文件夹路径
private string path = null;
private string fileType = null;
private int sizes = 0;
#endregion
upload():初始化变量#region upload():初始化变量
/**//// <summary>
/// 初始化变量
/// </summary>
public upload()
{
path = @"uploadimages"; //上传路径
fileType = "jpg|gif|bmp|jpeg|png|rar|doc";
sizes = 200; //传文件的大小,默认200KB
}
#endregion
设置传入的值:Path/Sizes/FileType#region 设置传入的值:Path/Sizes/FileType
/**//// <summary>
/// 设置上传路径,如:uploadimages
/// </summary>
public string Path
{
set
{
path = @"" + value + @"";
}
}
/**//// <summary>
/// 设置上传文件大小,单位为KB
/// </summary>
public int Sizes
{
set
{
sizes = value;
}
}
/**//// <summary>
/// 设置上传文件的类型,如:jpg|gif|bmp
/// </summary>
public string FileType
{
set
{
fileType = value;
}
}
#endregion
SaveAs()上传文件#region SaveAs()上传文件
public string SaveAs(System.Web.HttpFileCollection files)
{
string myReturn = "";
try
{
for (int iFile = 0; iFile < files.Count; iFile++)
{
postedFile = files[iFile];
//获得文件的上传的路径
localFilePath = postedFile.FileName;
//判断上传文件路径是否为空
if (localFilePath == null || localFilePath == "")
{
//message("您没有上传数据呀,是不是搞错了呀!");
//break;
continue;
}
else
{
判断文件大小#region 判断文件大小
//获得上传文件的大小
localFileLength = postedFile.ContentLength;
//判断上传文件大小
if (localFileLength >= sizes * 1024)
{
message("上传的图片不能大于" + sizes + "KB");
break;
}
#endregion
文件夹#region 文件夹
//获取保存文件夹路径
saveFileFolderPath = getSaveFileFolderPath(path);
#endregion
文件名#region 文件名
//获得原文件名(含扩展名)
localFileName = System.IO.Path.GetFileName(postedFile.FileName);
saveFileName = DateTime.UtcNow.ToString("yyyy" + "MM" + "dd" + "HH" + "mm" + "ss" + "ffffff");//"yyyy"+"MM"+"dd"+"HH"+"mm"+"ss"+"ffffff"
#endregion
扩展名#region 扩展名
//获取原文件扩展名
localFileExtension = getFileExtension(localFileName);
//如果为真允许上传,为假则不允许上传
if (localFileExtension == "")
{
message("目前本系统支持的格式为:" + fileType);
}
//得到保存文件的扩展名,可根据需要更改扩展名
saveFileExtension = localFileExtension;
#endregion
//得到保存文件的完整路径
saveFilePath = saveFileFolderPath + saveFileName + saveFileExtension;
postedFile.SaveAs(saveFilePath);
myReturn = myReturn + ((myReturn == "" || myReturn == null) ? "" : "|") + path.TrimStart(new char[] { '' }) + saveFileName + saveFileExtension;
//以下对文章的内容进行一些加工
System.Web.HttpContext.Current.Response.Write("<script>parent.Article_Content___Frame.FCK.EditorDocument.body.innerHTML+='<img src=" + saveFileName + saveFileExtension + " "+" border=0 />'</SCRIPT>");
}
}
}
catch
{
//异常
message("出现未知错误!");
myReturn = null;
}
return myReturn;
}
#endregion
getSaveFileFolderPath( ):获得保存的文件夹的物理路径#region getSaveFileFolderPath( ):获得保存的文件夹的物理路径
/**//// <summary>
/// 获得保存的文件夹的物理路径
/// 返回保存的文件夹的物理路径,若为null则表示出错
/// </summary>
/// <param name="format">保存的文件夹路径 或者 格式化方式创建保存文件的文件夹,如按日期"yyyy"+"MM"+"dd":20060511</param>
/// <returns>保存的文件夹的物理路径,若为null则表示出错</returns>
private string getSaveFileFolderPath(string format)
{
string mySaveFolder = null;
try
{
string folderPath = null;
//以当前时间创建文件夹,
//!!!!!!!!!!!!以后用正则表达式替换下面的验证语句!!!!!!!!!!!!!!!!!!!
if (format.IndexOf("yyyy") > -1 || format.IndexOf("MM") > -1 || format.IndexOf("dd") > -1 || format.IndexOf("hh") > -1 || format.IndexOf("mm") > -1 || format.IndexOf("ss") > -1 || format.IndexOf("ff") > -1)
{
//以通用标准时间创建文件夹的名字
folderPath = DateTime.UtcNow.ToString(format);
mySaveFolder = System.Web.HttpContext.Current.Server.MapPath(".") + @"" + folderPath + @"";
}
else
{
mySaveFolder = System.Web.HttpContext.Current.Server.MapPath(".") + format;
}
System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(mySaveFolder);
//判断文件夹否存在,不存在则创建
if (!dir.Exists)
{
dir.Create();
}
}
catch
{
message("获取保存路径出错");
}
return mySaveFolder;
}
#endregion
getFileExtension( ):获取原文件的扩展名#region getFileExtension( ):获取原文件的扩展名
/**//// <summary>
/// 获取原文件的扩展名,返回原文件的扩展名(localFileExtension),该函数用到外部变量fileType,即允许的文件扩展名.
/// </summary>
/// <param name="myFileName">原文件名</param>
/// <returns>原文件的扩展名(localFileExtension);若返回为null,表明文件无后缀名;若返回为"",则表明扩展名为非法.</returns>
private string getFileExtension(string myFileName)
{
string myFileExtension = null;
//获得文件扩展名
myFileExtension = System.IO.Path.GetExtension(myFileName);//若为null,表明文件无后缀名;
//分解允许上传文件的格式
if (myFileExtension != "")
{myFileExtension = myFileExtension.ToLower();//转化为小写
}
string[] temp = fileType.Split('|');
//设置上传的文件是否是允许的格式
bool flag = false;
//判断上传的文件是否是允许的格式
foreach (string data in temp)
{
if (("." + data) == myFileExtension)
{
flag = true;
break;
}
}
if (!flag)
{
myFileExtension = "";//不能设置成null,因为null表明文件无后缀名;
}
return myFileExtension;
}
#endregion
message( ):弹出消息框#region message( ):弹出消息框
/**//// <summary>
/// 弹出消息框,显示内容(msg),点击"确定"后页面跳转到该路径(url)
/// </summary>
/// <param name="msg">显示内容</param>
/// <param name="url">跳转路径</param>
private void message(string msg, string url)
{
System.Web.HttpContext.Current.Response.Write("<script language=javascript>alert('" + msg + "');window.location='" + url + "'</script>");
}
/**//// <summary>
/// 弹出消息框,显示内容(msg),无跳转
/// </summary>
/// <param name="msg">显示内容</param>
private void message(string msg)
{
System.Web.HttpContext.Current.Response.Write("<script language=javascript>alert('" + msg + "');</script>");
}
#endregion
}
}

本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。

html文件上传,后端代码怎样实现 C#使用HTML文件中的file文件上传,用C#代码接收上传文件 如何用html制作网页html怎么制作 如何在网上申请免费空间,并将html代码上传? 哪位兄弟会HTML的文件上传的代码? 大神你好,我在ftp添加了html文件,需要后台数据,但是输出的输出的是源码,这是什么情况? 怎么把写好的html上传服务器代码 如何成功上传HTML文件 求html多文件上传代码 可参考以下代码 html上传文件代码 html网页上传文件的完整代码 美国3万亿财团拜访华为,邀请华为上市,为何华为决绝不上市? 华为为何不上市? 华为为何坚持不上市? 华为公司为什么还不上市? 华为那么强,为什么没有上市? 华为为何不上市 华为的选择案例分析华为为什么不走上市之路 华为为什么不上市三大原因 华为会上市吗? 想把html上传到域名下面,要怎么操作 求html 用户注册,文件上传代码 HTML语言实现文件上传 大神你好,我在ftp添加了html文件,需要后台数据,但是输出的输出的是源码,这是什么情况? springmvc怎么实现多文件上传 怎么上传html文件 用html如何 上传视频?代码怎么写 体育用品中垫腰用的球叫什么 瑜伽健身球是什么呢? 做什么运动有利于腰部锻炼? 瑜伽球怎么用能快速瘦腰收腹 男人做什么运动有助于腰部有力 腰背疼痛做什么运动有效锻炼腰部 弱弱的问一下,腰间绕球有什么用,有训练必要吗 用瑜伽球怎么练腰背肌 怎样用瑜伽球减腰部的肉 瑜伽球可以预防腰部损伤吗? 瑜伽球如何练腰背的柔韧性 人为什么会越来越多? 腰部怎么锻炼呀?
Top