谢谢为盼!
6 个解决方案
#1
能提供用vb.net写的关于这方面的代码么?
多谢!多谢!
多谢!多谢!
#2
在ASP.NET中实现多文件上传
Vb.NET代码
http://lucky_elove.www1.dotnetplayground.com/ShowDetail.aspx?id=58EA3515-36F2-4FD9-AC89-EAF49F59816C
Vb.NET代码
http://lucky_elove.www1.dotnetplayground.com/ShowDetail.aspx?id=58EA3515-36F2-4FD9-AC89-EAF49F59816C
#3
<%--
uploadc.aspx,lzx编写。
单个程序可直接运行。
这是一个单HTMLINPUTFILE上传多个文件较完整的示例程序。我这里使用了DATATable和DropDownListp实现。
已实现把选好的文件显示在下拉列表中,也可从在下拖拉列表中选定一个不想上传文件,按移走文件按钮删除此文件。
程序原始框架参考了飞鹰编写的upload.aspx,转载时请保留此信息。
--%>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Data" %>
<%@ page Language="C#" debug="true" %>
<html>
<head>
<title>一个HTMLINPUTFILE实现多文件上传示例</title>
<script language="C#" runat="server">
public static DataTable upfiles;
public void CreatTable()
{
upfiles = new DataTable("upfile");
DataColumn[] keys= new DataColumn[1];
keys[0]= upfiles.Columns.Add("filename",typeof(string));
keys[0].AllowDBNull=false;
upfiles.PrimaryKey= keys;
upfiles.Columns.Add("filelength",typeof(Int32));
upfiles.Columns.Add("filestream",typeof(Stream));
Span1.InnerHtml ="";
fcount.Text="";
fname.Text="";
fsize.Text="";
}
public void AddFile(object sender , EventArgs E)
{
if (upfiles==null){
CreatTable();
}
if(myFile.PostedFile.FileName!="")
{
string nam = myFile.PostedFile.FileName ;
int i= nam.LastIndexOf("\\") ;
string filename =nam.Substring(i+1) ;
if(upfiles.Rows.Find(filename)==null)
{
int filelen=myFile.PostedFile.ContentLength;
Stream fstream=myFile.PostedFile.InputStream;
DataRow dr=upfiles.NewRow();
dr[0]=filename;//获取文件名
dr[1]=filelen;//文件长度
dr[2]=fstream;//文件流
upfiles.Rows.Add(dr);//增加
ArrayList dc=new ArrayList();
for(int j=0;j<upfiles.Rows.Count;j++)
{
DataRow df=upfiles.Rows[j];
dc.Add(df[0].ToString());
}
files.DataSource=dc;
files.DataBind();
// fname.Text+=" "+filename+"<br>";
// fcount.Text=upfiles.Rows.Count.ToString();
// fsize.Text+=filelen.ToString()+"<br>";
}
}
else{
Span1.InnerHtml ="<font color=red>请选择文件!</font>";
}
}
public void RemoveFile(object sender , EventArgs E)
{
if(files.SelectedItem.Value!=null){
string fname=files.SelectedItem.Value;
DataRow foundRow= upfiles.Rows.Find(fname);
if(foundRow!=null)
upfiles.Rows.Remove(foundRow);
ArrayList dc=new ArrayList();
for(int j=0;j<upfiles.Rows.Count;j++)
{
DataRow df=upfiles.Rows[j];
dc.Add(df[0].ToString());
}
files.DataSource=dc;
files.DataBind();
}
else{
Span1.InnerHtml ="<font color=red>请选择文件!</font>";
}
}
public void UploadFile(object sender , EventArgs E)
{
fcount.Text=upfiles.Rows.Count.ToString();
if(upfiles.Rows.Count>0)
{
fname.Text="";
fsize.Text="";
for(int j=0;j<upfiles.Rows.Count;j++)
{
DataRow dr=upfiles.Rows[j];
string topath=Server.MapPath(".\\"+dr[0]);
int FileLen=Convert.ToInt32(dr[1]);
byte[] input = new byte[FileLen];
((System.IO.Stream)dr[2]).Read(input, 0, FileLen);
FileStream fw = new FileStream(topath,FileMode.Create,FileAccess.Write);
fw.Write(input,0,FileLen);
fw.Close();
fname.Text+=" "+dr[0].ToString()+"<br>";
fsize.Text+=" "+dr[1].ToString()+"<br>";
Span1.InnerHtml +="<font color=Blue>文件"+(j+1).ToString()+"上传成功!<br></font>";
}
}
upfiles=null;
}
</script>
</head>
<body>
<center><br><br>
<h3> 一个HTMLINPUTFILE实现多文件同时上传示例 </h3>
<form id="uploderform" method="post" action="upload.aspx" enctype="multipart/form-data" runat="server" >
<table border="1" cellspacing="0" cellpadding="0" >
<tr><td> 请选择上传文件
<input type="file" id="myFile" MaxLength="50" Size="40" runat="server" >
</td><td> <input type="button" value="添加到列表" OnServerClick="AddFile" runat="server" ></td></tr>
<tr><td width=250 align=center>已选择的上传文件列表<br>
<asp:DropDownList id="files" runat="server"></asp:DropDownList>
</td>
<td align=center><input type="button" value="移走文件" OnServerClick="RemoveFile" runat="server" ><br>
</td></tr>
<tr><td colspan=2 align=cneter >注意:上传文件大小限制在XXM以下!
<input type="button" value="上传全部文件" OnServerClick="UploadFile" runat="server" >
</td></tr>
</table>
</form>
<br>
<br>
<table border="1" cellspacing="0">
<tr><td td colspan=2 align=center><b>多文件上传情况</b></td>
</tr>
<tr><td colspan=2 align=center><b><span id="Span1" runat="server" />
</b></td><tr>
</tr>
<tr>
<td>文件个数 :</td>
<td><asp:label id="fcount" text="" runat="server" /></td></tr>
<tr>
<td>文件名称 :</td>
<td><asp:label id="fname" text="" runat="server" /></td></tr>
<tr>
<td>文件类型 :</td>
<td><asp:label id="fenc" runat="server" /></td></tr>
<tr>
<td>文件大小 :(in bytes)</td>
<td><asp:label id="fsize" runat="server" /></td></tr>
</table>
<br>
<br>
<br>
<h5><a href="http://www.eq-hi.ac.cn/">lzx制作</a></h5>
</center>
</body>
</html>
uploadc.aspx,lzx编写。
单个程序可直接运行。
这是一个单HTMLINPUTFILE上传多个文件较完整的示例程序。我这里使用了DATATable和DropDownListp实现。
已实现把选好的文件显示在下拉列表中,也可从在下拖拉列表中选定一个不想上传文件,按移走文件按钮删除此文件。
程序原始框架参考了飞鹰编写的upload.aspx,转载时请保留此信息。
--%>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Data" %>
<%@ page Language="C#" debug="true" %>
<html>
<head>
<title>一个HTMLINPUTFILE实现多文件上传示例</title>
<script language="C#" runat="server">
public static DataTable upfiles;
public void CreatTable()
{
upfiles = new DataTable("upfile");
DataColumn[] keys= new DataColumn[1];
keys[0]= upfiles.Columns.Add("filename",typeof(string));
keys[0].AllowDBNull=false;
upfiles.PrimaryKey= keys;
upfiles.Columns.Add("filelength",typeof(Int32));
upfiles.Columns.Add("filestream",typeof(Stream));
Span1.InnerHtml ="";
fcount.Text="";
fname.Text="";
fsize.Text="";
}
public void AddFile(object sender , EventArgs E)
{
if (upfiles==null){
CreatTable();
}
if(myFile.PostedFile.FileName!="")
{
string nam = myFile.PostedFile.FileName ;
int i= nam.LastIndexOf("\\") ;
string filename =nam.Substring(i+1) ;
if(upfiles.Rows.Find(filename)==null)
{
int filelen=myFile.PostedFile.ContentLength;
Stream fstream=myFile.PostedFile.InputStream;
DataRow dr=upfiles.NewRow();
dr[0]=filename;//获取文件名
dr[1]=filelen;//文件长度
dr[2]=fstream;//文件流
upfiles.Rows.Add(dr);//增加
ArrayList dc=new ArrayList();
for(int j=0;j<upfiles.Rows.Count;j++)
{
DataRow df=upfiles.Rows[j];
dc.Add(df[0].ToString());
}
files.DataSource=dc;
files.DataBind();
// fname.Text+=" "+filename+"<br>";
// fcount.Text=upfiles.Rows.Count.ToString();
// fsize.Text+=filelen.ToString()+"<br>";
}
}
else{
Span1.InnerHtml ="<font color=red>请选择文件!</font>";
}
}
public void RemoveFile(object sender , EventArgs E)
{
if(files.SelectedItem.Value!=null){
string fname=files.SelectedItem.Value;
DataRow foundRow= upfiles.Rows.Find(fname);
if(foundRow!=null)
upfiles.Rows.Remove(foundRow);
ArrayList dc=new ArrayList();
for(int j=0;j<upfiles.Rows.Count;j++)
{
DataRow df=upfiles.Rows[j];
dc.Add(df[0].ToString());
}
files.DataSource=dc;
files.DataBind();
}
else{
Span1.InnerHtml ="<font color=red>请选择文件!</font>";
}
}
public void UploadFile(object sender , EventArgs E)
{
fcount.Text=upfiles.Rows.Count.ToString();
if(upfiles.Rows.Count>0)
{
fname.Text="";
fsize.Text="";
for(int j=0;j<upfiles.Rows.Count;j++)
{
DataRow dr=upfiles.Rows[j];
string topath=Server.MapPath(".\\"+dr[0]);
int FileLen=Convert.ToInt32(dr[1]);
byte[] input = new byte[FileLen];
((System.IO.Stream)dr[2]).Read(input, 0, FileLen);
FileStream fw = new FileStream(topath,FileMode.Create,FileAccess.Write);
fw.Write(input,0,FileLen);
fw.Close();
fname.Text+=" "+dr[0].ToString()+"<br>";
fsize.Text+=" "+dr[1].ToString()+"<br>";
Span1.InnerHtml +="<font color=Blue>文件"+(j+1).ToString()+"上传成功!<br></font>";
}
}
upfiles=null;
}
</script>
</head>
<body>
<center><br><br>
<h3> 一个HTMLINPUTFILE实现多文件同时上传示例 </h3>
<form id="uploderform" method="post" action="upload.aspx" enctype="multipart/form-data" runat="server" >
<table border="1" cellspacing="0" cellpadding="0" >
<tr><td> 请选择上传文件
<input type="file" id="myFile" MaxLength="50" Size="40" runat="server" >
</td><td> <input type="button" value="添加到列表" OnServerClick="AddFile" runat="server" ></td></tr>
<tr><td width=250 align=center>已选择的上传文件列表<br>
<asp:DropDownList id="files" runat="server"></asp:DropDownList>
</td>
<td align=center><input type="button" value="移走文件" OnServerClick="RemoveFile" runat="server" ><br>
</td></tr>
<tr><td colspan=2 align=cneter >注意:上传文件大小限制在XXM以下!
<input type="button" value="上传全部文件" OnServerClick="UploadFile" runat="server" >
</td></tr>
</table>
</form>
<br>
<br>
<table border="1" cellspacing="0">
<tr><td td colspan=2 align=center><b>多文件上传情况</b></td>
</tr>
<tr><td colspan=2 align=center><b><span id="Span1" runat="server" />
</b></td><tr>
</tr>
<tr>
<td>文件个数 :</td>
<td><asp:label id="fcount" text="" runat="server" /></td></tr>
<tr>
<td>文件名称 :</td>
<td><asp:label id="fname" text="" runat="server" /></td></tr>
<tr>
<td>文件类型 :</td>
<td><asp:label id="fenc" runat="server" /></td></tr>
<tr>
<td>文件大小 :(in bytes)</td>
<td><asp:label id="fsize" runat="server" /></td></tr>
</table>
<br>
<br>
<br>
<h5><a href="http://www.eq-hi.ac.cn/">lzx制作</a></h5>
</center>
</body>
</html>
#4
for(int intI=0;intI<DataList1.Items.Count;intI++)
{
HtmlInputFile FileE =(HtmlInputFile)(DataList1.Items[intI].FindControl("txtPicE"));
if((FileE.PostedFile.FileName.Trim().Length!=0)&&(FileE.PostedFile.ContentLength!=0))
{
string strPicPath=System.Configuration.ConfigurationSettings.AppSettings["news_cn"];
//判斷是否有該文件夾,無則新增
if(!Directory.Exists(strPicPath))
{
try
{
Directory.CreateDirectory(strPicPath);
}
catch
{
RaiseError("需要上傳的文件目錄"+strPicPath+"不存在");
}
}
CreateFileName cfn = new CreateFileName();
cfn.isType = true;
cfn.Length = 4;
cfn.Prefix = "news";
string f_name=FileE.PostedFile.FileName.Trim();
string[] arr = f_name.Split('\\');
f_name = arr[arr.Length-1];
f_name = cfn.Get_File_Name(f_name,strPicPath);
try
{
FileE.PostedFile.SaveAs(strPicPath+"\\"+f_name);
if(strAllName.Trim()=="")
{
strAllName +=f_name;
}
else
{
strAllName +=";"+f_name;
}
}
catch
{
RaiseError("上傳出錯,請確定具有上傳權限!");
}
}
}
{
HtmlInputFile FileE =(HtmlInputFile)(DataList1.Items[intI].FindControl("txtPicE"));
if((FileE.PostedFile.FileName.Trim().Length!=0)&&(FileE.PostedFile.ContentLength!=0))
{
string strPicPath=System.Configuration.ConfigurationSettings.AppSettings["news_cn"];
//判斷是否有該文件夾,無則新增
if(!Directory.Exists(strPicPath))
{
try
{
Directory.CreateDirectory(strPicPath);
}
catch
{
RaiseError("需要上傳的文件目錄"+strPicPath+"不存在");
}
}
CreateFileName cfn = new CreateFileName();
cfn.isType = true;
cfn.Length = 4;
cfn.Prefix = "news";
string f_name=FileE.PostedFile.FileName.Trim();
string[] arr = f_name.Split('\\');
f_name = arr[arr.Length-1];
f_name = cfn.Get_File_Name(f_name,strPicPath);
try
{
FileE.PostedFile.SaveAs(strPicPath+"\\"+f_name);
if(strAllName.Trim()=="")
{
strAllName +=f_name;
}
else
{
strAllName +=";"+f_name;
}
}
catch
{
RaiseError("上傳出錯,請確定具有上傳權限!");
}
}
}
#5
谢谢net_lover(孟子E章)网友,可是我访问不了您说的那个网址,请问您能将源码贴在这里
么?或者,发到我的邮箱:zhaorg@csu.edu.cn
将不胜感激!
么?或者,发到我的邮箱:zhaorg@csu.edu.cn
将不胜感激!
#6
谢谢各位,谢谢xrascal(横刀夺爱),谢谢yehanyu(风吹衣袖,月上西楼)
马上结贴!
来者有分!
马上结贴!
来者有分!
#1
能提供用vb.net写的关于这方面的代码么?
多谢!多谢!
多谢!多谢!
#2
在ASP.NET中实现多文件上传
Vb.NET代码
http://lucky_elove.www1.dotnetplayground.com/ShowDetail.aspx?id=58EA3515-36F2-4FD9-AC89-EAF49F59816C
Vb.NET代码
http://lucky_elove.www1.dotnetplayground.com/ShowDetail.aspx?id=58EA3515-36F2-4FD9-AC89-EAF49F59816C
#3
<%--
uploadc.aspx,lzx编写。
单个程序可直接运行。
这是一个单HTMLINPUTFILE上传多个文件较完整的示例程序。我这里使用了DATATable和DropDownListp实现。
已实现把选好的文件显示在下拉列表中,也可从在下拖拉列表中选定一个不想上传文件,按移走文件按钮删除此文件。
程序原始框架参考了飞鹰编写的upload.aspx,转载时请保留此信息。
--%>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Data" %>
<%@ page Language="C#" debug="true" %>
<html>
<head>
<title>一个HTMLINPUTFILE实现多文件上传示例</title>
<script language="C#" runat="server">
public static DataTable upfiles;
public void CreatTable()
{
upfiles = new DataTable("upfile");
DataColumn[] keys= new DataColumn[1];
keys[0]= upfiles.Columns.Add("filename",typeof(string));
keys[0].AllowDBNull=false;
upfiles.PrimaryKey= keys;
upfiles.Columns.Add("filelength",typeof(Int32));
upfiles.Columns.Add("filestream",typeof(Stream));
Span1.InnerHtml ="";
fcount.Text="";
fname.Text="";
fsize.Text="";
}
public void AddFile(object sender , EventArgs E)
{
if (upfiles==null){
CreatTable();
}
if(myFile.PostedFile.FileName!="")
{
string nam = myFile.PostedFile.FileName ;
int i= nam.LastIndexOf("\\") ;
string filename =nam.Substring(i+1) ;
if(upfiles.Rows.Find(filename)==null)
{
int filelen=myFile.PostedFile.ContentLength;
Stream fstream=myFile.PostedFile.InputStream;
DataRow dr=upfiles.NewRow();
dr[0]=filename;//获取文件名
dr[1]=filelen;//文件长度
dr[2]=fstream;//文件流
upfiles.Rows.Add(dr);//增加
ArrayList dc=new ArrayList();
for(int j=0;j<upfiles.Rows.Count;j++)
{
DataRow df=upfiles.Rows[j];
dc.Add(df[0].ToString());
}
files.DataSource=dc;
files.DataBind();
// fname.Text+=" "+filename+"<br>";
// fcount.Text=upfiles.Rows.Count.ToString();
// fsize.Text+=filelen.ToString()+"<br>";
}
}
else{
Span1.InnerHtml ="<font color=red>请选择文件!</font>";
}
}
public void RemoveFile(object sender , EventArgs E)
{
if(files.SelectedItem.Value!=null){
string fname=files.SelectedItem.Value;
DataRow foundRow= upfiles.Rows.Find(fname);
if(foundRow!=null)
upfiles.Rows.Remove(foundRow);
ArrayList dc=new ArrayList();
for(int j=0;j<upfiles.Rows.Count;j++)
{
DataRow df=upfiles.Rows[j];
dc.Add(df[0].ToString());
}
files.DataSource=dc;
files.DataBind();
}
else{
Span1.InnerHtml ="<font color=red>请选择文件!</font>";
}
}
public void UploadFile(object sender , EventArgs E)
{
fcount.Text=upfiles.Rows.Count.ToString();
if(upfiles.Rows.Count>0)
{
fname.Text="";
fsize.Text="";
for(int j=0;j<upfiles.Rows.Count;j++)
{
DataRow dr=upfiles.Rows[j];
string topath=Server.MapPath(".\\"+dr[0]);
int FileLen=Convert.ToInt32(dr[1]);
byte[] input = new byte[FileLen];
((System.IO.Stream)dr[2]).Read(input, 0, FileLen);
FileStream fw = new FileStream(topath,FileMode.Create,FileAccess.Write);
fw.Write(input,0,FileLen);
fw.Close();
fname.Text+=" "+dr[0].ToString()+"<br>";
fsize.Text+=" "+dr[1].ToString()+"<br>";
Span1.InnerHtml +="<font color=Blue>文件"+(j+1).ToString()+"上传成功!<br></font>";
}
}
upfiles=null;
}
</script>
</head>
<body>
<center><br><br>
<h3> 一个HTMLINPUTFILE实现多文件同时上传示例 </h3>
<form id="uploderform" method="post" action="upload.aspx" enctype="multipart/form-data" runat="server" >
<table border="1" cellspacing="0" cellpadding="0" >
<tr><td> 请选择上传文件
<input type="file" id="myFile" MaxLength="50" Size="40" runat="server" >
</td><td> <input type="button" value="添加到列表" OnServerClick="AddFile" runat="server" ></td></tr>
<tr><td width=250 align=center>已选择的上传文件列表<br>
<asp:DropDownList id="files" runat="server"></asp:DropDownList>
</td>
<td align=center><input type="button" value="移走文件" OnServerClick="RemoveFile" runat="server" ><br>
</td></tr>
<tr><td colspan=2 align=cneter >注意:上传文件大小限制在XXM以下!
<input type="button" value="上传全部文件" OnServerClick="UploadFile" runat="server" >
</td></tr>
</table>
</form>
<br>
<br>
<table border="1" cellspacing="0">
<tr><td td colspan=2 align=center><b>多文件上传情况</b></td>
</tr>
<tr><td colspan=2 align=center><b><span id="Span1" runat="server" />
</b></td><tr>
</tr>
<tr>
<td>文件个数 :</td>
<td><asp:label id="fcount" text="" runat="server" /></td></tr>
<tr>
<td>文件名称 :</td>
<td><asp:label id="fname" text="" runat="server" /></td></tr>
<tr>
<td>文件类型 :</td>
<td><asp:label id="fenc" runat="server" /></td></tr>
<tr>
<td>文件大小 :(in bytes)</td>
<td><asp:label id="fsize" runat="server" /></td></tr>
</table>
<br>
<br>
<br>
<h5><a href="http://www.eq-hi.ac.cn/">lzx制作</a></h5>
</center>
</body>
</html>
uploadc.aspx,lzx编写。
单个程序可直接运行。
这是一个单HTMLINPUTFILE上传多个文件较完整的示例程序。我这里使用了DATATable和DropDownListp实现。
已实现把选好的文件显示在下拉列表中,也可从在下拖拉列表中选定一个不想上传文件,按移走文件按钮删除此文件。
程序原始框架参考了飞鹰编写的upload.aspx,转载时请保留此信息。
--%>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Data" %>
<%@ page Language="C#" debug="true" %>
<html>
<head>
<title>一个HTMLINPUTFILE实现多文件上传示例</title>
<script language="C#" runat="server">
public static DataTable upfiles;
public void CreatTable()
{
upfiles = new DataTable("upfile");
DataColumn[] keys= new DataColumn[1];
keys[0]= upfiles.Columns.Add("filename",typeof(string));
keys[0].AllowDBNull=false;
upfiles.PrimaryKey= keys;
upfiles.Columns.Add("filelength",typeof(Int32));
upfiles.Columns.Add("filestream",typeof(Stream));
Span1.InnerHtml ="";
fcount.Text="";
fname.Text="";
fsize.Text="";
}
public void AddFile(object sender , EventArgs E)
{
if (upfiles==null){
CreatTable();
}
if(myFile.PostedFile.FileName!="")
{
string nam = myFile.PostedFile.FileName ;
int i= nam.LastIndexOf("\\") ;
string filename =nam.Substring(i+1) ;
if(upfiles.Rows.Find(filename)==null)
{
int filelen=myFile.PostedFile.ContentLength;
Stream fstream=myFile.PostedFile.InputStream;
DataRow dr=upfiles.NewRow();
dr[0]=filename;//获取文件名
dr[1]=filelen;//文件长度
dr[2]=fstream;//文件流
upfiles.Rows.Add(dr);//增加
ArrayList dc=new ArrayList();
for(int j=0;j<upfiles.Rows.Count;j++)
{
DataRow df=upfiles.Rows[j];
dc.Add(df[0].ToString());
}
files.DataSource=dc;
files.DataBind();
// fname.Text+=" "+filename+"<br>";
// fcount.Text=upfiles.Rows.Count.ToString();
// fsize.Text+=filelen.ToString()+"<br>";
}
}
else{
Span1.InnerHtml ="<font color=red>请选择文件!</font>";
}
}
public void RemoveFile(object sender , EventArgs E)
{
if(files.SelectedItem.Value!=null){
string fname=files.SelectedItem.Value;
DataRow foundRow= upfiles.Rows.Find(fname);
if(foundRow!=null)
upfiles.Rows.Remove(foundRow);
ArrayList dc=new ArrayList();
for(int j=0;j<upfiles.Rows.Count;j++)
{
DataRow df=upfiles.Rows[j];
dc.Add(df[0].ToString());
}
files.DataSource=dc;
files.DataBind();
}
else{
Span1.InnerHtml ="<font color=red>请选择文件!</font>";
}
}
public void UploadFile(object sender , EventArgs E)
{
fcount.Text=upfiles.Rows.Count.ToString();
if(upfiles.Rows.Count>0)
{
fname.Text="";
fsize.Text="";
for(int j=0;j<upfiles.Rows.Count;j++)
{
DataRow dr=upfiles.Rows[j];
string topath=Server.MapPath(".\\"+dr[0]);
int FileLen=Convert.ToInt32(dr[1]);
byte[] input = new byte[FileLen];
((System.IO.Stream)dr[2]).Read(input, 0, FileLen);
FileStream fw = new FileStream(topath,FileMode.Create,FileAccess.Write);
fw.Write(input,0,FileLen);
fw.Close();
fname.Text+=" "+dr[0].ToString()+"<br>";
fsize.Text+=" "+dr[1].ToString()+"<br>";
Span1.InnerHtml +="<font color=Blue>文件"+(j+1).ToString()+"上传成功!<br></font>";
}
}
upfiles=null;
}
</script>
</head>
<body>
<center><br><br>
<h3> 一个HTMLINPUTFILE实现多文件同时上传示例 </h3>
<form id="uploderform" method="post" action="upload.aspx" enctype="multipart/form-data" runat="server" >
<table border="1" cellspacing="0" cellpadding="0" >
<tr><td> 请选择上传文件
<input type="file" id="myFile" MaxLength="50" Size="40" runat="server" >
</td><td> <input type="button" value="添加到列表" OnServerClick="AddFile" runat="server" ></td></tr>
<tr><td width=250 align=center>已选择的上传文件列表<br>
<asp:DropDownList id="files" runat="server"></asp:DropDownList>
</td>
<td align=center><input type="button" value="移走文件" OnServerClick="RemoveFile" runat="server" ><br>
</td></tr>
<tr><td colspan=2 align=cneter >注意:上传文件大小限制在XXM以下!
<input type="button" value="上传全部文件" OnServerClick="UploadFile" runat="server" >
</td></tr>
</table>
</form>
<br>
<br>
<table border="1" cellspacing="0">
<tr><td td colspan=2 align=center><b>多文件上传情况</b></td>
</tr>
<tr><td colspan=2 align=center><b><span id="Span1" runat="server" />
</b></td><tr>
</tr>
<tr>
<td>文件个数 :</td>
<td><asp:label id="fcount" text="" runat="server" /></td></tr>
<tr>
<td>文件名称 :</td>
<td><asp:label id="fname" text="" runat="server" /></td></tr>
<tr>
<td>文件类型 :</td>
<td><asp:label id="fenc" runat="server" /></td></tr>
<tr>
<td>文件大小 :(in bytes)</td>
<td><asp:label id="fsize" runat="server" /></td></tr>
</table>
<br>
<br>
<br>
<h5><a href="http://www.eq-hi.ac.cn/">lzx制作</a></h5>
</center>
</body>
</html>
#4
for(int intI=0;intI<DataList1.Items.Count;intI++)
{
HtmlInputFile FileE =(HtmlInputFile)(DataList1.Items[intI].FindControl("txtPicE"));
if((FileE.PostedFile.FileName.Trim().Length!=0)&&(FileE.PostedFile.ContentLength!=0))
{
string strPicPath=System.Configuration.ConfigurationSettings.AppSettings["news_cn"];
//判斷是否有該文件夾,無則新增
if(!Directory.Exists(strPicPath))
{
try
{
Directory.CreateDirectory(strPicPath);
}
catch
{
RaiseError("需要上傳的文件目錄"+strPicPath+"不存在");
}
}
CreateFileName cfn = new CreateFileName();
cfn.isType = true;
cfn.Length = 4;
cfn.Prefix = "news";
string f_name=FileE.PostedFile.FileName.Trim();
string[] arr = f_name.Split('\\');
f_name = arr[arr.Length-1];
f_name = cfn.Get_File_Name(f_name,strPicPath);
try
{
FileE.PostedFile.SaveAs(strPicPath+"\\"+f_name);
if(strAllName.Trim()=="")
{
strAllName +=f_name;
}
else
{
strAllName +=";"+f_name;
}
}
catch
{
RaiseError("上傳出錯,請確定具有上傳權限!");
}
}
}
{
HtmlInputFile FileE =(HtmlInputFile)(DataList1.Items[intI].FindControl("txtPicE"));
if((FileE.PostedFile.FileName.Trim().Length!=0)&&(FileE.PostedFile.ContentLength!=0))
{
string strPicPath=System.Configuration.ConfigurationSettings.AppSettings["news_cn"];
//判斷是否有該文件夾,無則新增
if(!Directory.Exists(strPicPath))
{
try
{
Directory.CreateDirectory(strPicPath);
}
catch
{
RaiseError("需要上傳的文件目錄"+strPicPath+"不存在");
}
}
CreateFileName cfn = new CreateFileName();
cfn.isType = true;
cfn.Length = 4;
cfn.Prefix = "news";
string f_name=FileE.PostedFile.FileName.Trim();
string[] arr = f_name.Split('\\');
f_name = arr[arr.Length-1];
f_name = cfn.Get_File_Name(f_name,strPicPath);
try
{
FileE.PostedFile.SaveAs(strPicPath+"\\"+f_name);
if(strAllName.Trim()=="")
{
strAllName +=f_name;
}
else
{
strAllName +=";"+f_name;
}
}
catch
{
RaiseError("上傳出錯,請確定具有上傳權限!");
}
}
}
#5
谢谢net_lover(孟子E章)网友,可是我访问不了您说的那个网址,请问您能将源码贴在这里
么?或者,发到我的邮箱:zhaorg@csu.edu.cn
将不胜感激!
么?或者,发到我的邮箱:zhaorg@csu.edu.cn
将不胜感激!
#6
谢谢各位,谢谢xrascal(横刀夺爱),谢谢yehanyu(风吹衣袖,月上西楼)
马上结贴!
来者有分!
马上结贴!
来者有分!