Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Menukar Fail Java kepada Array Byte?

Bagaimanakah Saya Boleh Menukar Fail Java kepada Array Byte?

Barbara Streisand
Barbara Streisandasal
2024-12-24 21:36:26332semak imbas

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

Menukar Fail kepada Tatasusunan Byte dalam Java

Penukaran tatasusunan java.io.File kepada bait[] dalam Java memainkan peranan penting dalam pelbagai senario, seperti penyimpanan fail, rangkaian dan manipulasi data. Untuk melaksanakan tugas ini, platform Java menawarkan pelbagai pendekatan.

Files.readAllBytes(Path)

Sehingga JDK 7, Files. kaedah readAllBytes(Path) muncul sebagai penyelesaian yang mudah. Ia memerlukan objek Path yang mewakili fail sebagai input dan mengembalikan tatasusunan bait[] yang mengandungi kandungan fail.

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

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

Kaedah ini menyediakan cara yang ringkas dan cekap untuk menukar fail kepada tatasusunan bait.

Strim Input Data

Sebelum JDK 7, kaedah tradisional terlibat menggunakan FileInputStream dan DataInputStream untuk membaca kandungan fail. Berikut ialah contoh:

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

Pendekatan ini memerlukan lebih banyak kod dan pengendalian sumber tambahan.

Pelaksanaan Tersuai

Dalam senario di mana kedua-dua perkara di atas tidak penyelesaian adalah sesuai, seseorang boleh mencipta penyelesaian tersuai. Coretan kod berikut menunjukkan pelaksanaan asas:

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();

Kesimpulan

Pilihan pendekatan bergantung pada keperluan khusus dan keserasian dengan versi Java. Files.readAllBytes(Path) menonjol sebagai pilihan yang paling mudah dan cekap dari JDK 7 dan seterusnya.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Fail Java kepada Array Byte?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn