3

こんにちは、Java を使用して任意のファイルの最初の 4 バイトを読み取る方法が必要です。なぜ最初の 4 バイトなのですか? 実際のファイルタイプの法医学的な拇印なので(ファイル拡張子は改ざんされる可能性があるため信頼できません)

http://en.wikipedia.org/wiki/File_carving

さて、この方法でファイルを読み取ると(以下、Javaコード)、ファイル「コンテンツ」が読み取られますが、ファイルヘッダー情報がスキップされると思います...?マジック ナンバー(最初の 4 バイト) を取得できないため、特定の標本の実際のファイル タイプを識別/確認できません。

byte[] buffer = new byte[4];
InputStream is = new FileInputStream("somwhere.in.the.dark");
if (is.read(buffer) != buffer.length) { 
    // do something 
}
is.close();

ファイルの最初の 4 バイトを読み取る

提案してください?

4

3 に答える 3

2

私はあなたが使用できると思います:

IOUtils.toByteArray(InputStream is) 

こちらを参照してください: IOUtils.toByteArrayを参照 して、InputStream を byteArray に変換し、最初の 4 バイトを取得します。

于 2015-04-30T10:15:26.080 に答える