2012-01-03 15 views
2

私はこの特定のコードを使って、ユーザーに画像ファイルのみをアップロードするように制限しています。".txt"ファイルであるかどうかを確認する検証

if (!fileName.getContentType().startsWith("image/")) 
    errors.add("", new ActionError("errors.imageFile.contentType")); 

と同じです。別のシナリオでは、拡張子「.txt」のファイルのみをアップロードするようにしたいと考えています。どのようなMIMEタイプを使用するか、このタスクを達成するのに役立つコードを教えてください。

+2

[this](http://docs.oracle.com/javase/6/docs/api/javax/activation/MimetypesFileTypeMap.html)に従って、** text/plain **を使用する必要があります。 – denolk

答えて

2

通常のテキストファイルのMIMEタイプはtext/plain私はどのようなMIMEタイプを使用する必要があります

+0

+1はポストに私を打つ。 ;) –

1

ですか..?

のContent-Type: text/plainの

2

テキストファイルは、以下のMIMEタイプを持っている:

text/plain 

しかし、thisサイトによると、それは一つだけではありません。 ApacheのFileNameUtilsgetExtensionメソッドを使用すると、ファイルの拡張子を取得できます。

1

別のシナリオでは、拡張子が「.txt」のファイルのみをアップロードするようにします。

プレーンテキストファイルのMIMEタイプは「text/plain」です。または、アップロードしたファイルの名前を確認することもできます。

ただし、のユーザーがテキスト以外のファイルをアップロードしないようにすることはできません。彼らが(Windows上で)行う必要があるのは、非テキストファイルの名前を ".txt"拡張子に変更してからアップロードするだけです。

ユーザーがテキストをアップロードするだけであることを確認したい場合は、ファイルをアップロードした後でテストする必要があります。

関連する問題