javaでコンピューター上のすべてのメディアファイル(映画、音楽)を取得する組み込みの方法はありますか?
質問する
2238 次
2 に答える
6
いいえ、組み込みではありません。ただし、ハード ドライブ全体をスキャンして、特定の拡張子 (さらには MIME タイプ) のファイルを探すクローラーを作成することもできます。
ディレクトリを反復処理する簡単な方法については、この回答を確認してください: https://stackoverflow.com/a/3154523/691606
ファイルから MIME タイプを取得するも参照してください。そこに示されている最初の2つ(3つのうち)のテクニックに基づいて、これは次のとおりです。
import javax.activation.MimetypesFileTypeMap;
import java.io.File;
class MimeForMedia {
public static void main(String[] args) {
String[] types = {
"png", "jpg", "gif", "tif", "bmp", // image
"snd", "wav", "mp3", "ogg", "au", // sound
"mov", "avi", "mpg", "flv" // video
};
MimetypesFileTypeMap typeMap = new MimetypesFileTypeMap();
for (String type : types) {
String name = "a." + type;
String bestType = typeMap.getContentType(name);
if (bestType.equals("application/octet-stream")) {
System.out.print( "Using URLConnection: " );
try {
bestType = (new File(name)).toURI().toURL()
.openConnection().getContentType();
} catch(Exception e) {
System.out.println( e.getMessage() );
}
}
System.out.println (type + " " + bestType);
}
}
}
以下は、Windows 7 PC での結果です。
Using URLConnection: png image/png
jpg image/jpeg
gif image/gif
tif image/tiff
Using URLConnection: bmp content/unknown
Using URLConnection: snd audio/basic
wav audio/x-wav
Using URLConnection: mp3 content/unknown
Using URLConnection: ogg content/unknown
au audio/basic
mov video/quicktime
avi video/x-msvideo
mpg video/mpeg
Using URLConnection: flv content/unknown
Press any key to continue . . .
于 2012-05-04T17:06:25.660 に答える
5
ファイル システムのすべてのフォルダーを繰り返し処理し、必要な拡張子を持つファイルを探します (時間があれば)。
于 2012-05-04T17:06:10.980 に答える