FileUpload.PostedFile 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
FileUpload 컨트롤을 사용하여 업로드된 파일의 내부 HttpPostedFile 개체를 가져옵니다.
public:
property System::Web::HttpPostedFile ^ PostedFile { System::Web::HttpPostedFile ^ get(); };
[System.ComponentModel.Browsable(false)]
public System.Web.HttpPostedFile PostedFile { get; }
[<System.ComponentModel.Browsable(false)>]
member this.PostedFile : System.Web.HttpPostedFile
Public ReadOnly Property PostedFile As HttpPostedFile
속성 값
FileUpload를 사용하여 업로드된 파일의 HttpPostedFile입니다.
- 특성
예제
다음 예제에서는 만드는 방법을 보여 줍니다는 FileUpload 제어 합니다. 클릭할 때 합니다 파일 업로드 단추는 파일 내용의 바이트 페이지의 텍스트 상자에 표시 됩니다. 이 예제에서는 합니다 PostedFile 속성에 액세스 합니다 HttpPostedFile.ContentLength 속성입니다. ContentLength 속성 파일 내용을 바이트 배열로 복사 하기 전에 파일의 길이 확인 하는 데 사용 됩니다.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void UploadButton_Click(object sender, EventArgs e)
{
// Specify the path on the server to
// save the uploaded file to.
String savePath = @"c:\temp\uploads\";
// Before attempting to perform operations
// on the file, verify that the FileUpload
// control contains a file.
if (FileUpload1.HasFile)
{
// Append the name of the file to upload to the path.
savePath += FileUpload1.FileName;
// Call the SaveAs method to save the
// uploaded file to the specified path.
// This example does not perform all
// the necessary error checking.
// If a file with the same name
// already exists in the specified path,
// the uploaded file overwrites it.
FileUpload1.SaveAs(savePath);
// Notify the user that the file was uploaded successfully.
UploadStatusLabel.Text = "Your file was uploaded successfully.";
// Call a helper routine to display the contents
// of the file to upload.
DisplayFileContents(FileUpload1.PostedFile);
}
else
{
// Notify the user that a file was not uploaded.
UploadStatusLabel.Text = "You did not specify a file to upload.";
}
}
void DisplayFileContents(HttpPostedFile file)
{
System.IO.Stream myStream;
Int32 fileLen;
StringBuilder displayString = new StringBuilder();
// Get the length of the file.
fileLen = FileUpload1.PostedFile.ContentLength;
// Display the length of the file in a label.
LengthLabel.Text = "The length of the file is " +
fileLen.ToString() + " bytes.";
// Create a byte array to hold the contents of the file.
Byte[] Input = new Byte[fileLen];
// Initialize the stream to read the uploaded file.
myStream = FileUpload1.FileContent;
// Read the file into the byte array.
myStream.Read(Input, 0, fileLen);
// Copy the byte array to a string.
for (int loop1 = 0; loop1 < fileLen; loop1++)
{
displayString.Append(Input[loop1].ToString());
}
// Display the contents of the file in a
// textbox on the page.
ContentsLabel.Text = "The contents of the file as bytes:";
TextBox ContentsTextBox = new TextBox();
ContentsTextBox.TextMode = TextBoxMode.MultiLine;
ContentsTextBox.Height = Unit.Pixel(300);
ContentsTextBox.Width = Unit.Pixel(400);
ContentsTextBox.Text = displayString.ToString();
// Add the textbox to the Controls collection
// of the Placeholder control.
PlaceHolder1.Controls.Add(ContentsTextBox);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>FileUpload.FileContent Property Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h4>Select a file to upload:</h4>
<asp:FileUpload id="FileUpload1"
runat="server">
</asp:FileUpload>
<br /><br />
<asp:Button id="UploadButton"
Text="Upload file"
OnClick="UploadButton_Click"
runat="server">
</asp:Button>
<br /><br />
<asp:Label id="UploadStatusLabel"
runat="server">
</asp:Label>
<hr />
<asp:Label id="LengthLabel"
runat="server">
</asp:Label>
<br /><br />
<asp:Label id="ContentsLabel"
runat="server">
</asp:Label>
<br /><br />
<asp:PlaceHolder id="PlaceHolder1"
runat="server">
</asp:PlaceHolder>
</div>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub UploadButton_Click(ByVal sender As Object, ByVal e As System.EventArgs)
' Specify the path on the server to
' save the uploaded file to.
Dim savePath As String = "c:\temp\uploads\"
' Before attempting to perform operations
' on the file, verify that the FileUpload
' control contains a file.
If (FileUpload1.HasFile) Then
' Append the name of the file to upload to the path.
savePath += FileUpload1.FileName
' Call the SaveAs method to save the
' uploaded file to the specified path.
' This example does not perform all
' the necessary error checking.
' If a file with the same name
' already exists in the specified path,
' the uploaded file overwrites it.
FileUpload1.SaveAs(savePath)
' Notify the user that the file was uploaded successfully.
UploadStatusLabel.Text = "Your file was uploaded successfully."
' Call a helper routine to display the contents
' of the file to upload.
DisplayFileContents(FileUpload1.PostedFile)
Else
' Notify the user that a file was not uploaded.
UploadStatusLabel.Text = "You did not specify a file to upload."
End If
End Sub
Sub DisplayFileContents(ByVal file As HttpPostedFile)
Dim myStream As System.IO.Stream
Dim fileLen As Integer
Dim displayString As New StringBuilder()
Dim loop1 As Integer
' Get the length of the file.
fileLen = FileUpload1.PostedFile.ContentLength
' Display the length of the file in a label.
LengthLabel.Text = "The length of the file is " _
+ fileLen.ToString + " bytes."
' Create a byte array to hold the contents of the file.
Dim Input(fileLen) As Byte
' Initialize the stream to read the uploaded file.
myStream = FileUpload1.FileContent
' Read the file into the byte array.
myStream.Read(Input, 0, fileLen)
' Copy the byte array to a string.
For loop1 = 0 To fileLen - 1
displayString.Append(Input(loop1).ToString())
Next loop1
' Display the contents of the file in a
' textbox on the page.
ContentsLabel.Text = "The contents of the file as bytes:"
Dim ContentsTextBox As New TextBox
ContentsTextBox.TextMode = TextBoxMode.MultiLine
ContentsTextBox.Height = Unit.Pixel(300)
ContentsTextBox.Width = Unit.Pixel(400)
ContentsTextBox.Text = displayString.ToString()
' Add the textbox to the Controls collection
' of the Placeholder control.
PlaceHolder1.Controls.Add(ContentsTextBox)
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>FileUpload.FileContent Property Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h4>Select a file to upload:</h4>
<asp:FileUpload id="FileUpload1"
runat="server">
</asp:FileUpload>
<br /><br />
<asp:Button id="UploadButton"
Text="Upload file"
OnClick="UploadButton_Click"
runat="server">
</asp:Button>
<br /><br />
<asp:Label id="UploadStatusLabel"
runat="server">
</asp:Label>
<hr />
<asp:Label id="LengthLabel"
runat="server">
</asp:Label>
<br /><br />
<asp:Label id="ContentsLabel"
runat="server">
</asp:Label>
<br /><br />
<asp:PlaceHolder id="PlaceHolder1"
runat="server">
</asp:PlaceHolder>
</div>
</form>
</body>
</html>
설명
PostedFile 기본 속성을 가져옵니다 HttpPostedFile 사용 하 여 업로드 된 파일에 대 한 개체는 FileUpload 제어 합니다. 업로드 된 파일에서 추가 속성에 액세스 하려면이 속성을 사용 합니다.
사용할 수는 ContentLength 파일의 길이 가져올 속성입니다. 사용할 수는 ContentType MIME 가져올 속성을 콘텐츠 형식 파일입니다. 또한 사용할 수 있습니다는 PostedFile 속성에 액세스를 FileName 속성을 InputStream 속성 및 SaveAs 메서드. 하지만 동일한 기능을 제공를 FileName 속성을 FileContent 속성 및 SaveAs 메서드.