W tym programie nauczysz się konwertować obiekt File na byte () i odwrotnie w Javie.
Aby zrozumieć ten przykład, należy znać następujące tematy dotyczące programowania w języku Java:
- Klasa plików Java
- Tablice Java
Zanim przekonwertujemy plik na tablicę bajtów i na odwrót, zakładamy, że mamy plik o nazwie test.txt w naszym folderze src .
Oto zawartość pliku test.txt
To jest plik testowy.
Przykład 1: Konwertuj plik na 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)
W powyższym programie ścieżkę do pliku przechowujemy w zmiennej path.
Następnie w bloku try odczytujemy wszystkie bajty z podanej ścieżki za pomocą readAllBytes()
metody.
Następnie używamy metody Arrays
' toString()
, aby wydrukować tablicę bajtów.
Ponieważ readAllBytes()
może rzucić an IOException
, użyliśmy tego try-catch
bloku w programie.
Przykład 2: Konwersja bajtu () na plik
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) ( ) ) )
Po uruchomieniu programu zawartość pliku test.txt jest kopiowana do pliku final.txt .
W powyższym programie użyliśmy tej samej metody, co w przykładzie 1, aby odczytać wszystkie bajty z pliku przechowywanego w path. Te bajty są przechowywane w zakodowanej tablicy.
Mamy również finalPath, w którym mają zostać zapisane bajty.
Następnie po prostu używamy metody Files
' write()
, aby zapisać zakodowaną tablicę bajtów do pliku w podanej finalPath.