❶ 如何区分哪个上载控件上传的附件
在界面上使用FileUpload控件时,最好在此控件后面添加一个保存按钮,在按钮中处理上传控件中的文件。 当用户点击按钮,触发按钮事件时,首先判断上传控件中是否选择了文件 if (FileUpload1.HasFile) { ... }//在文件被选择的情况下,才进行处理,基本上所有的处理代码都可以写在这个IF中。未选择文件就忽略,不做处理。 string fileName = FileUpload1.FileName;//获取文件名 string filepath = FileUpload1.PostedFile.FileName;//获取文件客户端路径 //读取上传文件到内存中 Stream stm = FileUpload1.FileContent; StreamReader sr = new StreamReader(stm); string buffer = sr.ReadToEnd();//读取流的当前位置到末尾 string[] fileLine = buffer.Split((char)0x0d);//根据换行分隔,存入到数组 也可以把上传文件从客户端保存到服务端 filePath = @"D:\upload\fileName.xls"; //保存至服务端的地址 FileUpload1.PostedFile.SaveAs(filePath);//进行文件的保存处理
❷ C# 一个控件上传多张图片,求具体实现方法
主程序功能实现,详细功能见附件,内容太多。
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.IO;
using System.Net;
using System.Text.RegularExpressions;
/// <summary>
/// FileUpload1.HasFile 如果是true,则表示该控件有文件要上传
/// FileUpload1.FileName 返回要上传文件的名称,不包含路径信息
/// FileUpload1.FileContent 返回一个指向上传文件的流对象
/// FileUpload1.PostedFile 返回已经上传文件的引用
/// FileUpload1.PostedFile.ContentLength 返回上传文件的按字节表示的文件大小
/// FileUpload1.PostedFile.ContentType 返回上传文件的MIME内容类型,也就是文件类型,如返回"image/jpg"
/// FileUpload1.PostedFile.FileName 返回文件在客户端的完全路径(包括文件名全称)
/// FileUpload1.PostedFile.InputStream 返回一个指向上传文件的流对象
/// FileInfo对象表示磁盘或网络位置上的文件。提供文件的路径,就可以创建一个FileInfo对象:
/// </summary>
public partial class BackManagement_ImagesUpload : System.Web.UI.Page
{
public string treePath = "";
public int imageW = 100;
public int imageH = 100;
protected void Page_Load(object sender, EventArgs e)
{
this.Button5.Attributes.Add("Onclick", "window.close();"); //在本地关闭当前页,而不需要发送到服务器去关闭当前页时
if (!Page.IsPostBack)
{
Label2.Text = Server.MapPath("/");
TextBox3.Text = "ImageUpload";
treePath = Server.MapPath("/") + TextBox3.Text.Trim() + "/";
TextBox4.Text = imageW.ToString();
TextBox5.Text = imageH.ToString();
}
}
protected void btnload_Click(object sender, EventArgs e)
{
//如果保存图片的目录不存在,由创建它
treePath = Server.MapPath("/") + TextBox3.Text.Trim() + "/";
imageW = Convert.ToInt32(TextBox4.Text.ToString());
imageH = Convert.ToInt32(TextBox5.Text.ToString());
if (!File.Exists(treePath + "images")) //如果/ImageUpload/images不存在,则创建/ImageUpload/images,用于存放源图片
{
System.IO.Directory.CreateDirectory(treePath + "images");
}
if (!File.Exists(treePath + "thumbnails")) //如果/ImageUpload/thumbnails不存在,则创建/ImageUpload/thumbnails,用于存放缩略图片
{
System.IO.Directory.CreateDirectory(treePath + "thumbnails");
}
if (!File.Exists(treePath + "textImages")) //如果/ImageUpload/textImages不存在,则创建/ImageUpload/textImages,用于存文字水印图片
{
System.IO.Directory.CreateDirectory(treePath + "textImages");
}
if (!File.Exists(treePath + "waterImages")) //如果/ImageUpload/waterImages不存在,则创建/ImageUpload/waterImages
//用于存图形水印图片
{
System.IO.Directory.CreateDirectory(treePath + "waterImages");
}
if (FileUpload1.HasFile) //如果是true,则表示该控件有文件要上传
{
string fileContentType = FileUpload1.PostedFile.ContentType;
if (fileContentType == "image/bmp" || fileContentType == "image/gif" || fileContentType == "image/pjpeg")
{
string name = FileUpload1.PostedFile.FileName; //返回文件在客户端的完全路径(包括文件名全称)
FileInfo file = new FileInfo(name); //FileInfo对象表示磁盘或网络位置上的文件。提供文件的路径,就可以创建一个FileInfo对象:
string fileName = file.Name; // 文件名称
string fileName_s = "x_" + file.Name; // 缩略图文件名称
string fileName_sy = "text_" + file.Name; // 水印图文件名称(文字)
string fileName_syp = "water_" + file.Name; // 水印图文件名称(图片)
string webFilePath = treePath + "images/" + fileName; // 服务器端文件路径
string webFilePath_s = treePath + "thumbnails/" + fileName_s; // 服务器端缩略图路径
string webFilePath_sy = treePath + "textImages/" + fileName_sy; // 服务器端带水印图路径(文字)
string webFilePath_syp = treePath + "waterImages/" + fileName_syp;// 服务器端带水印图路径(图片)
string webFilePath_sypf = Server.MapPath("../images/tzwhx.png"); // 服务器端水印图路径(图片)
if (!File.Exists(webFilePath))
{
try
{
FileUpload1.SaveAs(webFilePath); // 使用 SaveAs 方法保存文件
if (CheckBox1.Checked) //是否生成文字水印图
{
AddWater(webFilePath, webFilePath_sy);
}
if (CheckBox2.Checked) //是否生成图形水印图
{
AddWaterPic(webFilePath, webFilePath_syp, webFilePath_sypf);
}
MakeThumbnail(webFilePath, webFilePath_s, imageW, imageH, "Cut"); // 生成缩略图方法
Label1.Text = "提示:文件“" + fileName + "”成功上传,并生成“" + fileName_s + "”缩略图,文件类型为:" + FileUpload1.PostedFile.ContentType + ",文件大小为:" + FileUpload1.PostedFile.ContentLength + "B";
Image1.ImageUrl = "/" + TextBox3.Text.ToString() + "/images/" + fileName;
TextBox1.Text = webFilePath;
TextBox2.Text = "/" + TextBox3.Text.ToString() + "/images/" + fileName;
}
catch (Exception ex)
{
Label1.Text = "提示:文件上传失败,失败原因:" + ex.Message;
}
}
else
{
Label1.Text = "提示:文件已经存在,请重命名后上传";
}
}
else
{
Label1.Text = "提示:文件类型不符";
}
}
}
❸ 上传视频要下载控件怎么安装控件
其实就是让你下载电脑版腾讯视频 然后就可以传了 不过最大也只能4G
❹ 关于FileUpload控件上传文件大小限制问题
默认上传文件大小4096KB,如果要上传超过此大小的文件,会出现错误界面。可以对web.config文件做一下配置,就可以解决,解决方法如下:
1、首先创建一个名称为 file_value 的html文件。
❺ jquery如何获取input(file)控件上传的图片名称
$('input').on('change',function(){
var value = $(this).val();
value = value.split("\")[2];
})
value 就是图片名称。因为浏览器安全机制 获取到的value都是C:fakepath 加上图片名,所以可以用这个方式获取
❻ net网站在vs中怎么用上传文件控件
打开vs2008开发的.net网站,打开要添加上传文件功能的.aspx文件,并切换到.aspx文件的设计视图
打开工具箱,点开“标准”,找到“FileUpload”控件
左键点击“FileUpload”控件不放,拖动到.aspx页面中,在要放置上传功能的地方再松开鼠标,这时可以看到下图的控件
“FileUpload”控件是浏览文件来上传,还需要一个控件来触发把文件上传到服务器的操作,可以用一个按钮控件。在工具栏上,左键点击Button控件不放,拖动到.aspx文件中。
切换到.aspx的“源”视图,可以看到刚才拖动到页面的两个控件,请记下上传文件控件的id
切换到.aspx文件的“设计”视图,双击按钮进入到按钮的后台事件方法中。在下图的红框处就可以书写把文件上传到服务器的代码了
下图仅做一个简单的例子,表明FileUpload控件已经把文件上传到了网站后台,如红框代码所示。在实际应用中,此处可以调用上传到ftp服务器的方法。
运行网站,点击浏览按钮,上传一个文件
选择一个文件,比如下图的"会议.txt"。点击“打开”按钮
这时可以看到文件路径显示在FileUpload控件中,点击按钮
❼ html5文件上传控件的button样式怎么修改
你直接将它隐藏,然后自己写一个button。
给这个button加点击事件。
点击事件中在通过JS去触发上传文件控件的点击事件就可以了。
❽ 用fileupload控件上传文件怎样使上传的文件显示在指定的位置
朋友,比如你的 fileupload控件 ID 为 fileupload1的话,就这样
fileupload1.SaveAs(Server.MapPath("~/")+FileName)
"~/"就是当前目录 FileName 就是你的文件名
或者这样
fileupload1.SaveAs(@“f:\”+"文件名")
❾ file控件怎么上传多个文件
File控件是一个必须结合服务器端功能才能实现的纯客户端控件。
要使得文件上载能够成功,要做到以下几点:
INPUT type=file 元素必须出现在 FORM 元素内。
必须为 INPUT type=file 元素指定 NAME 标签属性的值。
FORM 元素 METHOD 标签属性的值必须设置为 post。
FORM 元素 ENCTYPE 标签属性的值必须设置为 multipart/form-data。
要处理上载到服务器的文件,服务器端进程必须可以处理 multipart/form-data 的提交。例如,Microsoft Posting Acceptor 能够允许 Microsoft Internet Information Server (IIS) 接受文件上载。而在网上也可找到其它的 Common Gateway Interface (CGI) 脚本用于处理 multipart/form-data 提交。
用户选择要上载的文件并提交页面后,该文件作为请求的一部分上载。文件将被完整地缓存在服务器内存中。
File控件一次只能上传一个文件,并且其文件属性值都是只读的。采用File控件同时上传多个文件,实际上是动态生成多个File控件,每选择上传一个文件,隐藏该控件,生成另一个File控件。这里只需要简单的JavaScript技巧既可以实现,所以不做赘述。
以ASP.NET为例,介绍在服务器端所需要进行的处理。
//获取上传文件列表
HttpFileCollection fileCollection = HttpContext.Current.Request.Files;
//逐个上传每个文件
for (int index = 0; index < HttpContext.Current.Request.Files.Count; index++)
{
HttpPostedFile postedFile = HttpContext.Current.Request.Files[index];
filename = postedFile.FileName;
if (postedFile.FileName != "")
{
postedFile.SaveAs(uploadPath);
}
}