Java でファイルからバイトを読み取る
-
FileInputStream
を使用して Java でファイルからバイトを読み取る -
Files
クラスreadAllBytes()
メソッドを使用して、Java でファイルからバイトを読み取る - Apache Commons-IO を使用して Java でファイルからバイトを読み取る
Java には、ファイルからバイトを読み取ったり、ファイルをバイトまたはバイト配列に変換したりするためのメソッドがいくつかあります。 このチュートリアルでは、Java でファイルからバイトを読み取るさまざまな方法を示します。
FileInputStream
を使用して Java でファイルからバイトを読み取る
FileInputStream
は、指定されたファイルからバイトを使用してデータを読み取ることができます。 このクラスの FileInputStream.read()
メソッドを使用して、Java でファイルからバイトを読み取ることができます。
以下の手順に従って、FileInputStream
クラスを使用してファイルからバイトを読み取ります。
- まず、
FileInputStream
クラスのインスタンスを作成します。 - 次に、バイト配列を作成します。 長さは入力ファイルと同じでなければなりません。
read()
メソッドを使用してFileInputStream
からバイトを読み取ります。- バイト配列を印刷します。
- インスタンスを閉じます。
上記の手順に基づいて例を実装してみましょう。
入力ファイルは Rich Text Format
です。
Hi, This is delftstack.com! The Best tutorial site.
Java 実装:
package delftstack;
import java.io.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Arrays;
public class Example {
public static void main(String[] args) throws IOException {
File File_Path = new File("C:\\Users\\Sheeraz\\delftstack.rtf");
// Instance of the FileInputStream
FileInputStream File_Input_Stream = new FileInputStream(File_Path);
// Create a byte array
byte[] Demo_Array = new byte[(int) File_Path.length()];
// Read file content to byte array
File_Input_Stream.read(Demo_Array);
// Close the instance
File_Input_Stream.close();
// Print the above byte array
System.out.print(Arrays.toString(Demo_Array));
}
}
上記のコードは、指定されたファイルから配列にバイトを読み取ります。 出力を参照してください:
[72, 105, 44, 32, 84, 104, 105, 115, 32, 105, 115, 32, 100, 101,
108, 102, 116, 115, 116, 97, 99, 107, 46, 99, 111, 109, 33, 32,
84, 104, 101, 32, 66, 101, 115, 116, 32, 116, 117, 116, 111,
114, 105, 97, 108, 32, 115, 105, 116, 101, 46]
Files
クラス readAllBytes()
メソッドを使用して、Java でファイルからバイトを読み取る
readAllBytes()
メソッドは、Java のファイルからすべてのバイトを読み取ります。 以下の手順に従って、Files
クラスを使用してファイルからバイトを読み取ります。
Paths.get()
メソッドを使用してパスを取得します。Files.readAllBytes()
を使用して、指定されたファイルからバイトを配列に読み取ります。- バイト配列を印刷します。
例を参照してください。
package delftstack;
import java.io.*;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Arrays;
public class Example {
public static void main(String[] args) throws IOException {
// Create the path
Path File_Path = Paths.get("C:\\Users\\Sheeraz\\delftstack.rtf");
// Read Bytes
byte[] Demo_Array = Files.readAllBytes(File_Path);
// Print the above byte array
System.out.print(Arrays.toString(Demo_Array));
}
}
このコードは、Files.readAllBytes()
メソッドを使用して、指定されたファイルからバイトを読み取ります。 出力を参照してください:
[72, 105, 44, 32, 84, 104, 105, 115, 32, 105, 115,
32, 100, 101, 108, 102, 116, 115, 116, 97, 99, 107,
46, 99, 111, 109, 33, 32, 84, 104, 101, 32, 66, 101,
115, 116, 32, 116, 117, 116, 111, 114, 105, 97, 108,
32, 115, 105, 116, 101, 46]
Apache Commons-IO を使用して Java でファイルからバイトを読み取る
Apache Commons-IO
には、Java でファイルからすべてのバイトを読み取るために使用できるパッケージ FileUtils
があります。 Apache Commons-IO
が Java 環境に追加されていることを確認してください。
Apache Commons-IO
の Maven 依存関係は次のとおりです。 pom.xml
に追加します。
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.7</version>
</dependency>
以下の手順に従って、Apache Commons-IO
を使用してファイルからバイトを読み取ります。
- 指定されたパスで
File
クラスを使用してファイルを作成します。 - ファイル名を入力として
FileUtils.readFileToByteArray()
を使用してバイトを読み取ります。 - バイト配列を印刷します。
この例の Java 実装を次に示します。
package delftstack;
import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import org.apache.commons.io.FileUtils;
public class Example {
public static void main(String[] args) throws IOException {
// Create the path
File Demo_File = new File("C:\\Users\\Sheeraz\\delftstack.rtf");
// Read Bytes
byte[] Demo_Array = FileUtils.readFileToByteArray(Demo_File);
// Print the above byte array
System.out.print(Arrays.toString(Demo_Array));
}
}
このコードは、Apache Commons-IO
ライブラリを使用して、指定されたファイルからバイトを読み取ります。 出力を参照してください:
[72, 105, 44, 32, 84, 104, 105, 115, 32, 105, 115,
32, 100, 101, 108, 102, 116, 115, 116, 97, 99, 107,
46, 99, 111, 109, 33, 32, 84, 104, 101, 32, 66, 101,
115, 116, 32, 116, 117, 116, 111, 114, 105, 97, 108,
32, 115, 105, 116, 101, 46]
Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.
LinkedIn Facebook