ASP.Net/Components/File Upload
Содержание
File Upload Demo (C#)
<%@ Page language="c#" src="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="UploadFile.WebForm1" %>
<HTML>
<body>
<form id="Form1" enctype="multipart/form-data" method="post" runat="server">
<INPUT id="FileInput" style="Z-INDEX: 101; LEFT: 32px; WIDTH: 552px; POSITION: absolute; TOP: 24px; HEIGHT: 24px" type="file" size="72" name="File1" runat="server">
<asp:button id="cmdUpload" style="Z-INDEX: 102; LEFT: 32px; POSITION: absolute; TOP: 72px" runat="server" Text="Upload"></asp:button>
<asp:Label id="lblInfo" style="Z-INDEX: 103; LEFT: 32px; POSITION: absolute; TOP: 128px" runat="server" Width="608px" Height="72px" Font-Names="Verdana" Font-Size="Medium" Font-Bold="True"></asp:Label></form>
</body>
</HTML>
<%--
using System;
using System.Collections;
using System.ruponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.IO;
namespace UploadFile
{
/// <summary>
/// Summary description for WebForm1.
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Button cmdUpload;
protected System.Web.UI.WebControls.Label lblInfo;
protected System.Web.UI.HtmlControls.HtmlInputFile FileInput;
private void Page_Load(object sender, System.EventArgs e)
{
// Only accept image types.
FileInput.Accept = "image/*";
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.cmdUpload.Click += new System.EventHandler(this.cmdUpload_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void cmdUpload_Click(object sender, System.EventArgs e)
{
if (FileInput.PostedFile.FileName == "")
{
lblInfo.Text = "No file specified.";
}
else
{
try
{
string serverFileName = Path.GetFileName(FileInput.PostedFile.FileName);
//FileInput.PostedFile.SaveAs(@"c:\" + serverFileName);
FileInput.PostedFile.SaveAs(MapPath(".") + serverFileName);
lblInfo.Text = "File " + serverFileName;
lblInfo.Text += " uploaded successfully.";
}
catch (Exception err)
{
lblInfo.Text = err.Message;
}
}
}
}
}
--%>
File Uploading in ASP.NET (VB.net)
<%@ Page Language="vb" %>
<html>
<head>
<title>File Uploading in ASP.NET</title>
<script runat="server">
Sub UploadBtn_Click(Sender as Object, e as EventArgs)
If InStr(Request.ContentType, "multipart/form-data") Then
Dim Counter1 As Integer
Dim Keys() As String
Dim Files As HttpFileCollection
Files = Request.Files
Keys = Files.AllKeys
For Counter1 = 0 To Keys.GetUpperBound(0)
Response.Write("File ID: " & Keys(Counter1) & "<br>")
Response.Write("File Name/Path: " & Files(Counter1).FileName & "<br>")
Next Counter1
Else
Response.Write("No files uploaded, or wrong content type!")
End If
End Sub
</script>
</head>
<body>
<form id="UploadForm" action="retrieveFiles.aspx" method="post" enctype="multipart/form-data" runat="server">
Select File To Upload to Server:
<br>
<input id="MyFile" type="file" runat="server">
<br>
<input id="MyFile2" type="file" runat="server">
<br>
<input type="submit" value="Upload!" onserverclick="UploadBtn_Click" runat="server" id="Submit1">
</form>
</body>
</html>
<%-- retrieveFiles.aspx
<%@ Page Language="vb" %>
<html>
<head>
<title>File Uploading in ASP.NET</title>
<script runat="server">
Sub Page_Load()
If InStr(Request.ContentType, "multipart/form-data") Then
Dim Counter1 As Integer
Dim Keys() As String
Dim Files As HttpFileCollection
Files = Request.Files
Keys = Files.AllKeys
For Counter1 = 0 To Keys.GetUpperBound(0)
Response.Write("File ID: " & Keys(Counter1) & "<br>")
Response.Write("File Name/Path: " & Files(Counter1).FileName & "<br>")
Next Counter1
Else
Response.Write("No files uploaded, or wrong content type!")
End If
End Sub
</script>
</head>
<body>
<br>
</body>
</html>
--%>
Upload File control (C#)
<%@ Page Language="C#" %>
<%@ Import Namespace="System.IO" %>
<script runat="server">
protected void btnAdd_Click(object sender, EventArgs e)
{
if (upImage.HasFile)
{
if (CheckFileType(upImage.FileName))
{
upImage.SaveAs(MapPath(upImage.FileName));
}
}
}
bool CheckFileType(string fileName)
{
string ext = Path.GetExtension(fileName);
switch (ext.ToLower())
{
case ".gif":
return true;
case ".png":
return true;
case ".jpg":
return true;
case ".jpeg":
return true;
default:
return false;
}
}
void Page_PreRender()
{
string upFolder = MapPath(".");
DirectoryInfo dir = new DirectoryInfo(upFolder);
dlstImages.DataSource = dir.GetFiles();
dlstImages.DataBind();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>FileUpload File</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label
id="lblImageFile"
Text="Image File:"
AssociatedControlID="upImage"
Runat="server" />
<asp:FileUpload
id="upImage"
Runat="server" />
<br /><br />
<asp:Button
id="btnAdd"
Text="Add Image"
OnClick="btnAdd_Click"
Runat="server" />
<hr />
<asp:DataList
id="dlstImages"
RepeatColumns="3"
runat="server">
<ItemTemplate>
<asp:Image ID="Image1"
ImageUrl="<%# Eval("Name", "./{0}") %>"
style="width:200px"
Runat="server" />
<br />
<%# Eval("Name") %>
</ItemTemplate>
</asp:DataList>
</div>
</form>
</body>
</html>
Upload file to the server (VB.net)
<%@ Page Language=VB Debug=true %>
<script runat=server>
Sub SubmitButton_Click(Source As Object, e As EventArgs)
MyFile.PostedFile.SaveAs(txtFileSaveAs.Value)
TheMessage.InnerHTML = "File uploaded!"
End Sub
</SCRIPT>
<HTML>
<HEAD>
<TITLE>Upload Sample Page</TITLE>
</HEAD>
<BODY>
<form enctype="multipart/form-data" runat="server">
Enter the name and path of the file to upload:
<input
id="MyFile"
type="file"
runat="server"
>
<BR><BR>
Enter the name only to save the file as: <BR>
<input
id="txtFileSaveAs"
type="text"
runat="server"
>
<BR><BR>
<span
id="TheMessage"
runat="server"
>
</span>
<BR><BR>
<input
runat="server"
type=button
value="Upload"
OnServerClick="SubmitButton_Click"
>
</Form>
</BODY>
</HTML>
Uploading Files with the HTML Input File Control (VB.net)
<%@ Page Language=VB Debug=true %>
<script runat=server>
Sub SubmitButton_Click(Source As Object, e As EventArgs)
" Not working
" Change the following folder as your settings
" MyFile.PostedFile.SaveAs("./" & txtFileSaveAs.Value)
TheMessage.InnerHTML = "File uploaded!"
End Sub
</SCRIPT>
<HTML>
<HEAD>
<TITLE>Uploading Files with the HTMLInputFile Control</TITLE>
</HEAD>
<BODY>
<form
enctype="multipart/form-data"
runat="server">
Enter the name and path of the file to upload:
<BR>
<input
id="MyFile"
type="file"
runat="server"
>
<BR><BR>
Enter the name only to save the file as: <BR>
<input
id="txtFileSaveAs"
type="text"
runat="server"
>
<BR><BR>
<span
id="TheMessage"
runat="server"
>
</span>
<BR><BR>
<input
runat="server"
type=button
value="Upload"
OnServerClick="SubmitButton_Click"
>
</Font>
</Form>
</BODY>
</HTML>