V tem programu se boste naučili pretvoriti objekt File v byte () in obratno v Javi.
Če želite razumeti ta primer, morate poznati naslednje programske teme Java:
- Java File Class
- Java nizi
Preden datoteko pretvorimo v bajtno matriko in obratno, predpostavimo, da imamo v mapi src datoteko z imenom test.txt .
Tukaj je vsebina test.txt
To je testna datoteka.
Primer 1: Pretvori datoteko v bajt ()
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)
V zgornjem programu pot do datoteke shranimo v spremenljivo pot.
Nato znotraj poskusnega bloka z readAllBytes()
metodo preberemo vse bajte z dane poti .
Nato uporabimo metodo Arrays
' toString()
za tiskanje bajtne matrike.
Ker readAllBytes()
morda vržemo IOException
, smo try-catch
blok uporabili v programu.
2. primer: pretvorite bajt () v datoteko
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) ( ) ) )
Ko zaženete program, se vsebina test.txt kopira v final.txt .
V zgornjem programu smo uporabili enako metodo kot primer 1 za branje vseh bajtov iz datoteke, shranjene v poti. Ti bajti so shranjeni v kodirani matriki.
Imamo tudi finalPath, kjer naj bodo zapisani bajti.
Nato preprosto uporabimo metodo Files
', write()
da zapišemo kodirano bajtno matriko v datoteko v dani finalPath.