次の方法で共有


HtmlInputFile サーバー コントロール宣言構文

<input type=file> HTML 要素に割り当てるサーバー側のコントロールを作成し、サーバーにファイルをアップロードできるようにします。

<input
    Type="File"
    EnableViewState="False|True"
    Id="string"
    Visible="False|True"
    OnDataBinding="OnDataBinding event handler"
    OnDisposed="OnDisposed event handler"
    OnInit="OnInit event handler"
    OnLoad="OnLoad event handler"
    OnPreRender="OnPreRender event handler"
    OnUnload="OnUnload event handler"
    runat="server"
    />

解説

HtmlInputFile コントロールを使用して、<input type=file> HTML 要素をプログラムで制御します。 HtmlInputFile コントロールを使用すると、ユーザーがバイナリ ファイルまたはテキスト ファイルをブラウザーから Web サーバー上の指定されたディレクトリにアップロードできるページを設計できます。 ファイル アップロードは、HTML 3.2 以降のすべての Web ブラウザーで使用できます。

使用例

単純なファイル アップロードの例を示します。 コードの最初のセクションで、ページのイベント ハンドラーを定義します。 ユーザーがフォームの Upload ボタンをクリックすると、ファイル名、コンテンツの長さ、およびコンテンツの容量 (バイト数) がページに表示されます。ファイルそのものは、サーバーの UploadedFiles ディレクトリにアップロードされます。

メモメモ

フォームの enctype 属性を "multipart/form-data" に設定する必要があります。

フォームのコードは、HtmlForm コントロール、HtmlInputFile コントロール、HtmlInputButton コントロール、4 つの HtmlGenericControls (<div> 要素と 3 つの <span> 要素。それぞれ開いているタグ内に runat="server" 属性と値のペアが含まれています) を実装します。

メモメモ

アップロードされたファイルについての情報をページ上に表示するには、HtmlGenericControlControl クラスから継承する Visible プロパティを、イベント ハンドラー コードで true に設定する必要があります。

<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlInputFile Control</title>
</head>

   <script runat="server">
      Sub UploadBtn_Click(Sender as Object, e as EventArgs)

         ' Display information about posted file
         FileName.InnerHtml = MyFile.PostedFile.FileName
         MyContentType.InnerHtml = MyFile.PostedFile.ContentType 
         ContentLength.InnerHtml = cStr(MyFile.PostedFile.ContentLength)
         FileDetails.Visible = True

         ' Save uploaded file to server
         MyFile.PostedFile.SaveAs("c:\Uploadedfiles\uploadfile.txt")
      End Sub
   </script>

   <body>
      <form id="Form1" action="fileupload.aspx" 
            method="post"
            enctype="multipart/form-data" 
            runat="server">

         <h1>ASP.NET File Upload Example</h1>
         Select File To Upload to Server: 
         <input id="MyFile" 
                type="file" 
                runat="server" /> 
         <br /><br />
         <input id="Submit1" type="submit" 
                value="Upload!"
                onserverclick="UploadBtn_Click" 
                runat="server" />
         <br /><br /><br />
         <div id="FileDetails" 
              visible="false" 
              runat="server">
            FileName: <span id="FileName" runat="server"/> <br />
            ContentType: <span id="MyContentType" runat="server"/> <br />
            ContentLength: <span id="ContentLength" runat="server"/>bytes
            <br />
         </div>
      </form>
   </body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlInputFile Control</title>
</head>

   <script runat="server">
      void UploadBtn_Click(Object sender, EventArgs e)
      {
         // Display information about posted file
         FileName.InnerHtml = MyFile.PostedFile.FileName;
         MyContentType.InnerHtml = MyFile.PostedFile.ContentType; 
         ContentLength.InnerHtml =
                               MyFile.PostedFile.ContentLength.ToString();
         FileDetails.Visible = true;

         // Save uploaded file to server
         MyFile.PostedFile.SaveAs("c:\\Uploadedfiles\\uploadfile.txt");
      }
   </script>

   <body>
      <form id="Form1" action="fileupload.aspx" 
            method="post"
            enctype="multipart/form-data" 
            runat="server">

         <h1>ASP.NET File Upload Example</h1>
         Select File To Upload to Server: 
         <input id="MyFile" 
                type="file" 
                runat="server" /> 
         <br /><br />
         <input id="Submit1" type="submit" 
                value="Upload!"
                onserverclick="UploadBtn_Click" 
                runat="server" />
         <br /><br /><br />
         <div id="FileDetails" 
              visible="false" 
              runat="server">
            FileName: <span id="FileName" runat="server"/> <br />
            ContentType: <span id="MyContentType" runat="server"/> <br />
            ContentLength: <span id="ContentLength" runat="server"/>bytes
            <br />
         </div>
      </form>
   </body>
</html>

参照

参照

HtmlInputFile

その他の技術情報

HTML サーバー コントロール