Balík New Input/Output (nio) Balík java.nio • Třída Path jako nová a mocnější reprezentace cesty k souboru • Pomocná třída Paths • Pomocná třída Files pro pokročilejší manipulaci se soubory Path • Nástupce File, konceptuálně zhruba totéž, ale s více možnostmi • Instance jsou nemodifikovatelné a vláknově bezpečné. • Podporuje více systémů souborů na jednom počítači • Nabízí metody jako getFileName, getParent, getRoot a subpath. • Objekt Path je porovnatelný, iterovatelný a sledovatelný (Comparable, Iterable, Watchable). • Zejména sledovatelnost je novou vlastností, umožňuje reagovat na změny v systému souborů (např. v adresáři). Zajímavé metody Path resolve umožňuje vyhodnotit danou cestu vůči jiné (např. relativní cestu vůči aktuálnímu adresáři) relativize naopak relativizuje, vytvoří relativní z absolutní, když zadáme výchozí adresář. startsWith, endWith podobně jako u řetězců, ale funguje na úseky cesty. • Kompletní dokumentace Path API Table of Contents Balík java.nio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  1 Path. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  1 Zajímavé metody Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  1 Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  2 Replit.com demo ke třídě Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  2 1 Files • Typická "utility class", třída nabízející statické metody. • Týkají se souborových systémů, souborů, adresářů atd. • Nabízí metody pro: ◦ kopírování ◦ mazání ◦ procházení (traverzace) systému souborů ◦ přístup k metadatům souborů (čas, práva, uživatel) ◦ přímé vytváření proudů (např. newBufferedReader) • Další v tutoriálu Oracle File Operations • Kompletní dokumentace Files API Replit.com demo ke třídě Path • https://Replit.com/@tpitner/PB162-Java-Lecture-12-files 2