web-dev-qa-db-ja.com

FileUploadでファイル拡張子をフィルターする

FileUploadコントロールの使用を含むasp.net Webアプリを作成しています。

現在、この特定のFileUploadコントロールは、.Zipまたは.gzファイルタイプのみを想定しています。誤ったタイプのファイルがアップロードされると、エラーメッセージがユーザーに表示されます。この機能はすでに実装されています。

私がやりたいのは、ユーザーが「ブラウズ」をクリックしたときに表示される、表示されるファイルタイプをフィルタリングすることです。

次のようなファイルを開くダイアログを見たことがあるかもしれません。
enter image description here

ファイル拡張子フィルターを表す領域を丸で囲みました。

これは非常に一般的な機能なので、現在のFileUpload Controlに組み込まれると思っていましたが、オンラインで検索したところ、実行できないという投稿が見つかりました。

これらの投稿は2年以上前の2009年のものです。

さて、私の質問は、現在のAsp.Net 4.0はこの機能をサポートしていますか?サポートしていない場合、必要な機能を取得するための簡単な解決策を知っていますか?.

ユーザーがサポートされているファイルタイプを選択したかどうかを検証できることを再度指摘したいと思います。探しているのは、開いているファイル内の不要なファイルタイプを除外する表面的な変更だけです。ダイアログ

ブラウザーでのファイルタイプによるフィルターは、asp.netでは制御できません。ブラウザーの機能です。

この質問はすでにstackoverflowで質問されています。クリックしてください ファイルアップロードコントロールでファイルタイプをフィルタリングしてください

5
sathishkumar

以下のコードを試すことができます。

<asp:FileUpload ID="UploadFile" accept="image/*" multiple="false" runat="server" BorderStyle="None" />

最新のブラウザで動作します。

プロシージャビハインドコードを使用して拡張機能を検証することを忘れないでください。

15
Arun Banik

ファイルアップロードコントロールで画像を選択するには.

それがあなたを助けることを願っています

asp:RegularExpressionValidator ID="rexp" runat="server" ControlToValidate="fupProduct"
     ErrorMessage="Only .gif, .jpg, .png, .tiff and .jpeg"
     ValidationExpression="(.*\.([Gg][Ii][Ff])|.*\.([Jj][Pp][Gg])|.*\.([Bb][Mm][Pp])|.*\.([pP][nN][gG])|.*\.([tT][iI][iI][fF])$)"></asp:RegularExpressionValidator
6
saau

クライアント側で可能です!ただし、サーバー側の検証を忘れずに行ってください。

この2つのリンクはそれを示しています: http://aspalliance.com/1614_Adding_Filter_Action_to_FileUpload_Control_of_ASPNET_20.allhttp://www.codeshode.com/2011/07/validate- file-extension-for-aspnet.html

0
Stephan

aSP.NET FileUploadコントロールから検証ファイル拡張子を作成できます

あなたはこの解決策に行くことができると思います

ASP.NET FileUploadコントロールのファイル拡張子を検証

0
Turbot