我創建了一個表單來將一些圖像插入blob字段。要選擇我使用的圖片如何知道上傳的文件是否爲圖像
<input type="file"....
我有這種形式:
<form enctype="multipart/form-data" method="post" ....
在一個servlet我用這個來「得到」的圖像上傳
Part immagine = request.getPart("immaginePrincipale");
但現在我有一個問題:我怎樣才能確定一個文件是一個圖像,而不是另一個文件改名爲圖像(例如file.txt renamed file.jpg)?
////////////////////////////////解決方案///////////// ////////////////////////////////////
@sdanzig提供的代碼似乎可行。
我只是通過我的InputStream方法createImageInputStream()
ImageInputStream iis = ageIO.createImageInputStream(myInpuStream);
Iterator<ImageReader> readers = ImageIO.getImageReaders(iis);
while (readers.hasNext()) {
ImageReader read = readers.next();
System.out.println("format name = " + read.getFormatName());
}
看看文件標題來檢查它是否是一個有效的圖像。有些庫可以用於此目的。快速搜索給了我[Java Mime Magic Library](http://sourceforge.net/projects/jmimemagic/),但我確定還有其他的。 – NullUserException