2012-01-03 32 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 2012-01-03 07:19:24

回答

2

通常爲文本文件的MIME類型text/plain

+0

+1擊敗我的職位。 ;) – 2012-01-03 07:20:02

1

我應該使用什麼樣的MIME類型..?

的Content-Type: text/plain的

2

文本文件具有以下MIME類型:

text/plain 

然而,根據this網站,它不是唯一的一個。您可以使用Apache的FileNameUtilsgetExtension方法獲取文件的擴展名。

1

我希望用戶只能在另一種場景中只上載擴展名爲「.txt」的文件。

純文本文件的MIME類型是「text/plain」。或者你可以檢查上傳文件的名稱。

但是,這些不會阻止用戶上傳非文本文件。他們所需要做的(在Windows上)是將非文本文件重命名爲「.txt」擴展名,然後將其上傳。

如果您確實想確保用戶只上傳文本,則需要在文件上傳後對其進行測試。

相關問題