Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

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

Znalosti v hodnotě stovek tisíc získáš za pár korun

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

Koupit všechny aktuálně dostupné lekce s funkcí odevzdávání úloh a certifikátem za exkluzivní cenu 960 Kč
Aktuální stav konta 0 Kč
Koupí tohoto výhodného balíčku získáš přístup ke všem 35 článkům (22 lekcí, 9 testů, 4 praktické cvičení) tohoto kurzu s kontrolou a certifikací a ještě navíc ušetříš 241 Kč. Nabídka je časově omezená a platí pro všechny lekce v kurzu. Nakup teď a získej limitovanou 20% slevu.

Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.

Co od nás v dalších lekcích dostaneš?
  • 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íť.

Článek pro vás napsal Petr Štechmüller
Avatar
Autor se věnuje primárně programování v Javě, ale nebojí se ani webových technologií.
Aktivity