Lekce 14 - Binární soubory v Javě
V minulé lekci, XML soubory v Javě enterprise řešení - Praktická ukázka XSD, jsme dokončili ukázku práce s XML soubory ve stylu enterprise řešení pomocí knihovny.
V dnešním Java tutoriálu si ukážeme další způsob uložení dat, a to
do binárních souborů. Představíme si třídy
DataOutputStream
a DataInputStream
. Naučíme se
binárně zapisovat a číst instance.
Doposud jsme tedy vždy datové typy převedli na textový
řetězec a ten uložili do textového souboru. Při
opětovném čtení dat jsme je museli ze řetězce String
naparsovat zpět na původní datový typ. Do souboru lze ale ukládat data i v
jiné, než textové podobě. Hovoříme o tzv. binárních
souborech.
Jak víme, proměnné jsou uložené v operační paměti počítače. Fyzicky si paměť můžeme představit jako opravdu dlouhou řadu "přihrádek", kde v každé přihrádce může být nula nebo jednička. Jednotlivé prvky v přihrádkách jsou tedy bity. S těmi se většinou nepracuje jednotlivě, ale rovnou po osmicích, tzv. bajtech (1 bajt = 8 bitů).
Každý datový typ v Javě zabírá v paměti určitý počet bajtů, např.
typ int
zabírá 4 (celkem tedy 32 nul a jedniček). Je jedno, zda
je v něm uložená hodnota 0
nebo 1.000.000
, stále
má v paměti vyhrazeny ty své 4 bajty. Pokud budeme chtít proměnnou typu
int
uložit do souboru, nabízí se možnost tyto bajty z
operační paměti jednoduše otisknout na pevný disk. Vznikne
tzv. binární soubor. Tentokrát tedy číslo nepřevedeme na
řetězec String
a nezapíšeme do textového souboru, nýbrž
vytvoříme soubor, ve kterém bude uložené přímo číslo. Zkusme si to.
Zápis
Jako vždy nám Java poskytuje příslušné třídy, které nám umožní do
souboru zapisovat a číst. Pro binární soubory použijeme třídy
DataOutputStream
a DataInputStream
.
Založme si nový projekt, konzolovou aplikaci. Pojmenujme ho
BinarniSoubory
. Připravme si obvyklým způsobem soubor se kterým
budeme pracovat:
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Omezená nabídka: Nauč se vše a ušetři
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
V Java tutoriálu si představíme binární soubory a třídy DataOutputStream a DataInputStream. Naučíme se zapisovat a číst instance binárně v Javě.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.