Programa Java para converter arquivo em matriz de bytes e vice-versa

Neste programa, você aprenderá a converter um objeto File em byte () e vice-versa em Java.

Para entender este exemplo, você deve ter conhecimento dos seguintes tópicos de programação Java:

  • Classe de arquivo Java
  • Arrays Java

Antes de converter um arquivo em array de bytes e vice-versa, presumimos que temos um arquivo chamado test.txt em nossa pasta src .

Aqui está o conteúdo de test.txt

 Este é um arquivo de teste.

Exemplo 1: converter arquivo em byte ()

 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)

No programa acima, armazenamos o caminho para o arquivo no caminho da variável.

Então, dentro do bloco try, lemos todos os bytes do caminho fornecido usando o readAllBytes()método.

Então, usamos Arrayso toString()método ' para imprimir a matriz de bytes.

Visto que, readAllBytes()pode lançar um IOException, usamos o try-catchbloco no programa.

Exemplo 2: converter byte () em arquivo

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

Quando você executa o programa, o conteúdo de test.txt é copiado para final.txt .

No programa acima, usamos o mesmo método do Exemplo 1 para ler todos os bytes do Arquivo armazenado no caminho. Esses bytes são armazenados no array codificado.

Também temos um finalPath onde os bytes devem ser gravados.

Em seguida, simplesmente usamos o método Files' write()para gravar a matriz de bytes codificada em um Arquivo no caminho final fornecido.

Artigos interessantes...