V tomto programu se naučíte převést objekt File na byte () a naopak v Javě.
Abychom porozuměli tomuto příkladu, měli byste znát následující programovací témata Java:
- Třída souborů Java
- Java pole
Než převedeme soubor na bajtové pole a naopak, předpokládáme, že v naší složce src máme soubor s názvem test.txt .
Tady je obsah souboru test.txt
Toto je testovací soubor.
Příklad 1: Převést soubor na 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) ( ) ) )
proti
(84, 104, 105, 115, 32, 105, 115, 32, 97, 13, 10, 84, 101, 115, 116, 32, 102, 105, 108, 101, 46)
Ve výše uvedeném programu uložíme cestu k souboru do proměnné cesty.
Potom uvnitř bloku try načteme pomocí readAllBytes()
metody všechny bajty z dané cesty .
Potom použijeme metodu Arrays
' toString()
k tisku bajtového pole.
Protože, readAllBytes()
může hodit IOException
, jsme použili try-catch
blok v programu.
Příklad 2: Převést byte () na soubor
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) ( ) ) )
Při spuštění programu se obsah souboru test.txt zkopíruje do souboru final.txt .
Ve výše uvedeném programu jsme použili stejnou metodu jako v příkladu 1 ke čtení všech bajtů ze souboru uloženého v cestě. Tyto bajty jsou uloženy v kódovaném poli.
Máme také finalPath, kde se mají zapisovat bajty.
Potom jednoduše použijeme metodu Files
' write()
k zápisu kódovaného bajtového pole do souboru v dané finalPath.