ホームページ >Java >&#&チュートリアル >Java ファイルをバイト配列に変換するにはどうすればよいですか?

Java ファイルをバイト配列に変換するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-24 21:36:26332ブラウズ

How Can I Convert a Java File to a Byte Array?

Java でファイルを Byte 配列に変換

Java で java.io.File を byte[] 配列に変換すると、ファイル ストレージ、ネットワーキング、データ操作などのさまざまなシナリオで重要な役割を果たします。このタスクを達成するために、Java プラットフォームは複数のアプローチを提供しています。

Files.readAllBytes(Path)

JDK 7 以降では、Files.readAllBytes(Path)

import java.io.File;
import java.nio.file.Files;

File file;
// ...(file is initialised)...
byte[] fileContent = Files.readAllBytes(file.toPath());

。 readAllBytes(Path) メソッドが便利なソリューションとして登場しました。ファイルを表す Path オブジェクトを入力として受け取り、ファイルの内容を含む byte[] 配列を返します。

このメソッドは、ファイルをバイト配列に変換するための簡潔で効率的な方法を提供します。

データ入力ストリーム

FileInputStream inputStream = new FileInputStream(file);
DataInputStream dataInputStream = new DataInputStream(inputStream);
byte[] fileContent = dataInputStream.readAllBytes();

JDK 7 より前では、従来の方法が必要でした。 FileInputStream と DataInputStream を使用してファイルの内容を読み取ります。以下に例を示します。

このアプローチには、より多くのコードと追加のリソース処理が必要です。

カスタム実装

import java.io.FileInputStream;
import java.io.IOException;

File file;
// ...(file is initialised)...

// Read the entire file into a byte array
byte[] fileContent = new byte[(int) file.length()];
FileInputStream inputStream = new FileInputStream(file);
int bytesRead = inputStream.read(fileContent);
inputStream.close();

上記のいずれでもないシナリオソリューションが適切な場合は、カスタム ソリューションを作成できます。次のコード スニペットは、基本的な実装を示しています。

結論

アプローチの選択は、特定の要件と Java バージョンとの互換性によって異なります。 Files.readAllBytes(Path) は、JDK 7 以降、最も簡単で効率的なオプションとして際立っています。

以上がJava ファイルをバイト配列に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。