Java програма за конвертиране на файл в байтов масив и обратната версия

В тази програма ще се научите да конвертирате обект на файл в байт () и обратно в Java.

За да разберете този пример, трябва да имате познанията по следните теми за програмиране на Java:

  • Java File Class
  • Java масиви

Преди да преобразуваме файл в байтов масив и обратно, предполагаме, че имаме файл с име test.txt в нашата папка src .

Ето съдържанието на test.txt

 Това е тестов файл.

Пример 1: Конвертиране на файл в байт ()

 import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; import java.util.Arrays; public class FileByte ( public static void main(String() args) ( String path = System.getProperty("user.dir") + "\src\test.txt"; try ( byte() encoded = Files.readAllBytes(Paths.get(path)); System.out.println(Arrays.toString(encoded)); ) catch (IOException e) ( ) ) )

v

 (84, 104, 105, 115, 32, 105, 115, 32, 97, 13, 10, 84, 101, 115, 116, 32, 102, 105, 108, 101, 46)

В горната програма съхраняваме пътя към файла в променливата пътека.

След това, вътре в блока try, четем всички байтове от дадения път, използвайки readAllBytes()метод.

След това използваме метода Arrays' toString()за отпечатване на байтовия масив.

Тъй като, readAllBytes()може да хвърлим IOException, използваме try-catchблока в програмата.

Пример 2: Преобразуване на байт () във файл

 import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; public class ByteFile ( public static void main(String() args) ( String path = System.getProperty("user.dir") + "\src\test.txt"; String finalPath = System.getProperty("user.dir") + "\src\final.txt"; try ( byte() encoded = Files.readAllBytes(Paths.get(path)); Files.write(Paths.get(finalPath), encoded); ) catch (IOException e) ( ) ) ) 

Когато стартирате програмата, съдържанието на test.txt се копира в final.txt .

В горната програма използвахме същия метод като пример 1, за да прочетем всички байтове от файла, съхранен в пътя. Тези байтове се съхраняват в кодирания масив.

Имаме и finalPath, където трябва да се запишат байтовете.

След това просто използваме метода Files' write(), за да запишем кодирания байтов масив във файл в дадения finalPath.

Интересни статии...