FileUpload.PostedFile プロパティ
アセンブリ: System.Web (system.web.dll 内)

FileUpload を使用してアップロードされたファイルの HttpPostedFile。

PostedFile プロパティは FileUpload コントロールを使用して、アップロードされたファイルの基になる HttpPostedFile オブジェクトを取得します。このプロパティを使用して、アップロードしたファイルのその他のプロパティにアクセスできます。
ファイルの長さを取得するには、ContentLength プロパティを使用します。ファイルの MIME コンテンツ タイプを取得するには、ContentType プロパティを使用します。また、PostedFile プロパティを使用して、FileName プロパティ、InputStream プロパティ、および SaveAs メソッドにアクセスできます。ただし、FileName プロパティ、FileContent プロパティ、および SaveAs メソッドにも同じ機能があります。

FileUpload コントロールを作成する方法を次のコード例に示します。ユーザーが [Upload file] ボタンをクリックすると、ファイルの内容がページのテキスト ボックスにバイトとして表示されます。この例では、PostedFile プロパティを使用して HttpPostedFile.ContentLength プロパティにアクセスします。ファイルの内容をバイト配列にコピーする前にファイルの長さを確認するには、ContentLength プロパティを使用します。
<%@ Page Language="VB" %> <html> <head> <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 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 String 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 = displayString & 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 ' Add the textbox to the Controls collection ' of the Placeholder control. PlaceHolder1.Controls.Add(ContentsTextBox) End Sub </script> </head> <body> <h3>FileUpload.FileContent Property Example</h3> <form ID="Form1" runat="server"> <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> </form> </body> </html>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からFileUpload.PostedFile プロパティを検索する場合は、下記のリンクをクリックしてください。

- FileUpload.PostedFile プロパティのページへのリンク