In questo programma imparerai a convertire un oggetto File in byte () e viceversa in Java.
Per comprendere questo esempio, è necessario conoscere i seguenti argomenti di programmazione Java:
- Classe di file Java
- Array Java
Prima di convertire un file in un array di byte e viceversa, supponiamo di avere un file chiamato test.txt nella nostra cartella src .
Ecco il contenuto di test.txt
Questo è un file di prova.
Esempio 1: converti file in 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)
Nel programma sopra, memorizziamo il percorso del file nella variabile path.
Quindi, all'interno del blocco try, leggiamo tutti i byte dal percorso specificato usando il readAllBytes()
metodo.
Quindi, usiamo Arrays
il toString()
metodo ' per stampare l'array di byte.
Poiché, readAllBytes()
potrebbe lanciare un IOException
, abbiamo usato il try-catch
blocco nel programma.
Esempio 2: convertire byte () in file
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 esegui il programma, il contenuto di test.txt viene copiato in final.txt .
Nel programma precedente, abbiamo utilizzato lo stesso metodo dell'esempio 1 per leggere tutti i byte dal file memorizzato in path. Questi byte vengono memorizzati nell'array codificato.
Abbiamo anche un finalPath in cui devono essere scritti i byte.
Quindi, usiamo semplicemente il metodo Files
' write()
per scrivere l'array di byte codificato in un file nel dato finalPath.