public class Archív extends Object implements Closeable
Táto trieda slúži na prácu s údajovými archívmi vo formáte ZIP.
Vnútorne používa mierne prispôsobený balíček org.apache.tools.zip
(ktorý je
zameraný práve na prácu so ZIP archívmi) projektu Apache Ant. Balíček
je uvoľnený pod podmienkami licencie Apache License – Version 2.0,
January 2004.
Trieda Archív
poskytuje programátorské rozhranie na čo
najjednoduchšie vytvorenie archívu jeho zápis, čítanie alebo analýzu.
Programovací rámec umožňuje prepojenie iných súčastí (napríklad
súboru) s archívom a tým ešte väčšmi zjednodušiť
prácu s ním. (Pozri príklad na konci tohto opisu.)
Trieda je navrhnutá tak, aby bolo jej používanie čo najintuitívnejšie. Napríklad, ak máme jestvujúci archív, rozbaliť ho (aj s výpisom počtu rozbalených položiek) môžeme jednoducho takto:
Svet
.vypíšRiadok
("Počet rozbalených položiek: "
,new
Archív
("archív_na_rozbalenie.zip"
).rozbaľArchív
("cieľový_priečinok"
));
Naopak, vytvoriť jednoduchý archív môžeme takto:
Archív
archív =new
Archív
("archív_na_zbalenie.zip"
); archív.otvorNaZápis
(); archív.pridajPoložku
("názov_položky"
,"cesta/názov_súboru_na_zbalenie"
);// archív.pridajPoložku(…
archív.zavri
();
Na vytvorenie archívu, ktorý (bez filtrovania) zbalí celý obsah priečinka na disku môžeme využiť nasledujúce definície:
// Inštancia archívu.
private
Archív
archív =new
Archív
();// Rekurzívna metóda pridávajúca do archívu obsah priečinka
// a podpriečinkov.
private
void
pridajObsahPriečinka(String
priečinok,String
podpriečinok)throws
IOException
{String
[] zoznam =Súbor
.zoznam
(priečinok + podpriečinok);for
(String
položka : zoznam) {String
položkaArchívu = podpriečinok + položka;if
(Súbor
.jePriečinok
(priečinok + položkaArchívu)) {// Rekurzívne pridávanie obsahu (pod)priečinka:
Svet
.vypíšRiadok
('«'
, položkaArchívu,'»'
); archív.pridajPriečinok
(položkaArchívu); pridajObsahPriečinka(priečinok, položkaArchívu +'/'
); }else
{// Pridanie položky súboru:
Svet
.vypíšRiadok
(položkaArchívu); archív.pridajPoložku
(položkaArchívu, priečinok + položkaArchívu); } } }// Metóda slúžiaca na spustenie procesu balenia.
public
void
zbaľPriečinok(String
názovArchívu,String
priečinok)throws
IOException
{ priečinok = priečinok.replace
('\\'
,'/'
);if
(!priečinok.endsWith
("/"
)) priečinok +='/'
; archív.otvorNaZápis
(názovArchívu); pridajObsahPriečinka(priečinok,""
); archív.zavri
(); }
Príkaz slúžiaci na zahájenie balenia s využitím týchto definícií potom môže vyzerať takto:
zbaľPriečinok("názov_archívu.zip"
,"priečinok"
);
Príklad:
Tento príklad ukazuje ako pripojiť archív ku konfiguračnému súboru
(čím sa vytvorí zbalená konfigurácia) a naznačuje prácu s konfiguráciou
(ktorá je štandardná – rovnaká ako v prípade nepripojeného archívu –
pozri napríklad príklad v opise triedy ObsluhaUdalostí
– v sekcii Ďalšie udalosti).
import
knižnica.*;public
class
PripojenieArchívuextends
GRobot {private
PripojenieArchívu() {new
ObsluhaUdalostí
() {@
Overridepublic
boolean
konfiguráciaZmenená
() {// Overenie podmienok a ak treba zapísať konfiguráciu,
// tak návrat: return true;
return
false
; }@
Overridepublic
void
zapíšKonfiguráciu
(Súbor
súbor)throws
java.io.IOException
{// Zápis vlastných vlastností:
// súbor.zapíšVlastnosť("názov", hodnota);
// …
}@
Overridepublic
void
čítajKonfiguráciu
(Súbor
súbor)throws
java.io.IOException
{// Čítanie vlastných vlastností:
// hodnota = súbor.čítajVlastnosť("názov", predvolenáHodnota);
// …
} }; }public
static
void
main(String
[] args) {// Pripojenie archívu ku konfigurácii:
Svet
.konfiguračnýSúbor
().pripojArchív
(new
Archív
("PripojenieArchívu.zip"
));// Použitie konfigurácie:
Svet
.použiKonfiguráciu
("PripojenieArchívu.cfg"
);// Konštrukcia:
new
PripojenieArchívu(); } }
Trieda je navrhnutá tak, aby sa dala používať aj bez nevyhnutnosti obsluhy výnimiek.
Konštruktor a opis |
---|
Archív()
Predvolený konštruktor.
|
Archív(String názov)
Konštruktor prijímajúci názov archívu.
|
Archív(String cesta,
String názov)
Konštruktor prijímajúci cestu na disku a názov archívu.
|
Modifikátor a typ | Metóda a opis |
---|---|
String |
cestaNaDisku()
Vráti aktuálnu pracovnú cestu na pevnom disku alebo
null , ak nie je nastavená žiadna cesta. |
void |
cestaNaDisku(String cesta)
Nastaví alebo zruší pracovnú cestu na pevnom disku.
|
String |
cestaVArchive()
Alias pre
cestaVArchíve . |
String |
cestaVArchíve()
Vráti aktuálnu cestu nastavenú v rámci obsahu archívu alebo
null , ak nie je nastavená žiadna cesta. |
void |
cestaVArchive(String cesta)
Alias pre
cestaVArchíve . |
void |
cestaVArchíve(String cesta)
Nastaví alebo zruší novú cestu v rámci obsahu archívu.
|
void |
close()
|
apacheAntZIP.ZipEntry |
dajPolozku(String názovPoložky)
Alias pre
dajPoložku . |
apacheAntZIP.ZipEntry |
dajPoložku(String názovPoložky)
Vráti jestvujúcu položku archívu knižnice Apache Ant
ZipEntry na prácu s ňou. |
static String |
datumNaRetazec(long miliDátum)
Alias pre
dátumNaReťazec . |
static String |
dátumNaReťazec(long miliDátum)
Zostaví reťazec dátumu v predvolenom formáte zo zadaného počtu
milisekúnd počítaných od začiatku takzvanej epochy – polnoc 1.
|
static String |
datumNaRetazec(long miliDátum,
String formát)
Alias pre
dátumNaReťazec . |
static String |
dátumNaReťazec(long miliDátum,
String formát)
Podľa zadaných údajov vytvorí reťazec dátumu.
|
String |
datumPolozky(String názovPoložky)
Alias pre
dátumPoložky . |
void |
datumPolozky(String názovPoložky,
String dátumPoložky)
Alias pre
dátumPoložky . |
long |
datumPolozkyAkoCislo(String názovPoložky)
Alias pre
dátumPoložkyAkoČíslo . |
void |
datumPolozkyAkoCislo(String názovPoložky,
long dátum)
Alias pre
dátumPoložkyAkoČíslo . |
String |
dátumPoložky(String názovPoložky)
Vráti dátum položky v reťazcovej podobe.
|
void |
dátumPoložky(String názovPoložky,
String dátumPoložky)
Nastaví zadanej položke nový časový údaj jej vytvorenia.
|
long |
dátumPoložkyAkoČíslo(String názovPoložky)
Vráti dátum položky v číselnej podobe.
|
void |
dátumPoložkyAkoČíslo(String názovPoložky,
long dátum)
Nastaví zadanej položke nový časový údaj jej vytvorenia podľa
zadaného číselného údaja.
|
String |
komentar()
Alias pre
komentár . |
String |
komentár()
Vráti komentár otvoreného archívu, ak je definovaný.
|
void |
komentar(String komentár)
Alias pre
komentár . |
void |
komentár(String komentár)
Nastaví nový komentár archívu.
|
String |
komentarPolozky(String názovPoložky)
Alias pre
komentárPoložky . |
void |
komentarPolozky(String názovPoložky,
String komentár)
Alias pre
komentárPoložky . |
String |
komentárPoložky(String názovPoložky)
Vráti komentár zadanej položky.
|
void |
komentárPoložky(String názovPoložky,
String komentár)
Nastaví zadanej položke nový komentár.
|
long |
komprimovanaVelkostPolozky(String názovPoložky)
Alias pre
komprimovanáVeľkosťPoložky . |
long |
komprimovanáVeľkosťPoložky(String názovPoložky)
Vráti komprimovanú veľkosť zadanej položky.
|
String |
nazov()
Alias pre
názov . |
String |
názov()
Vráti aktuálny názov tohto archívu alebo
null , ak nie
je nastavený žiadny názov. |
void |
nazov(String názov)
Alias pre
názov . |
void |
názov(String názov)
Nastaví alebo zruší názov tohto archívu.
|
Obrazok |
obrazok(String názovPoložky)
Alias pre
obrázok . |
Obrázok |
obrázok(String názovPoložky)
Prečíta do vnútornej pamäte sveta obrázok z tohto archívu a vytvorí
z neho nový objekt typu
Obrázok . |
apacheAntZIP.ZipFile |
otvorNaCitanie()
Alias pre
otvorNaČítanie . |
apacheAntZIP.ZipFile |
otvorNaCitanie(String názov)
Alias pre
otvorNaČítanie . |
apacheAntZIP.ZipFile |
otvorNaCitanie(String cesta,
String názov)
Alias pre
otvorNaČítanie . |
apacheAntZIP.ZipFile |
otvorNaČítanie()
Otvorí archív na čítanie.
|
apacheAntZIP.ZipFile |
otvorNaČítanie(String názov)
Otvorí archív so zadaným menom na čítanie.
|
apacheAntZIP.ZipFile |
otvorNaČítanie(String cesta,
String názov)
Otvorí archív so zadaným menom na zadanej ceste na čítanie.
|
apacheAntZIP.ZipOutputStream |
otvorNaZapis()
Alias pre
otvorNaZápis . |
apacheAntZIP.ZipOutputStream |
otvorNaZápis()
Otvorí archív na zápis.
|
apacheAntZIP.ZipOutputStream |
otvorNaZapis(String názov)
Alias pre
otvorNaZápis . |
apacheAntZIP.ZipOutputStream |
otvorNaZápis(String názov)
Otvorí archív so zadaným menom na zápis.
|
apacheAntZIP.ZipOutputStream |
otvorNaZapis(String cesta,
String názov)
Alias pre
otvorNaZápis . |
apacheAntZIP.ZipOutputStream |
otvorNaZápis(String cesta,
String názov)
Otvorí archív so zadaným menom na zadanej ceste na zápis.
|
int |
pocetPoloziek()
Alias pre
početPoložiek . |
int |
početPoložiek()
Vráti aktuálny počet položiek archívu.
|
apacheAntZIP.ZipEntry |
pridajPolozku(String názovPoložky,
byte[] údajePoložky)
Alias pre
pridajPoložku . |
apacheAntZIP.ZipEntry[] |
pridajPolozku(String názovPoložky,
Obrázok obrázok)
Alias pre
pridajPoložku . |
apacheAntZIP.ZipEntry |
pridajPolozku(String názovPoložky,
String názovSúboru)
Alias pre
pridajPoložku . |
apacheAntZIP.ZipEntry |
pridajPoložku(String názovPoložky,
byte[] údajePoložky)
Zapíše údaje zadané vo forme poľa bajtov do položky archívu so
zadaným názvom.
|
apacheAntZIP.ZipEntry[] |
pridajPoložku(String názovPoložky,
Obrázok obrázok)
Zapíše obrázok do položky archívu so zadaným názvom.
|
apacheAntZIP.ZipEntry |
pridajPoložku(String názovPoložky,
String názovSúboru)
Pridá do archívu údaje zo zadaného súboru.
|
apacheAntZIP.ZipEntry |
pridajPriecinok(String názov)
Alias pre
pridajPriečinok . |
apacheAntZIP.ZipEntry |
pridajPriečinok(String názov)
Pridá do archívu položku reprezentujúcu priečinok.
|
static long |
retazecNaDatum(String dátum)
Alias pre
reťazecNaDátum . |
static long |
reťazecNaDátum(String dátum)
Vráti dátum v milisekundách počítaných od začiatku takzvanej
epochy (polnoc 1. januára 1970 greenwichského času – v našom časovom
pásme to znamená jednu hodinu v noci) podľa zadaného reťazca
v predvolenom formáte.
|
static long |
retazecNaDatum(String dátum,
String formát)
Alias pre
reťazecNaDátum . |
static long |
reťazecNaDátum(String dátum,
String formát)
Vráti dátum v milisekundách počítaných od začiatku takzvanej
epochy (polnoc 1. januára 1970 greenwichského času — v našom časovom
pásme to znamená jednu hodinu v noci) podľa zadaných
reťazcov dátumu a formátu.
|
int |
rozbalArchiv()
Alias pre
rozbaľArchív . |
int |
rozbaľArchív()
Táto metóda sa správa rovnako ako jej „hlavná verzia“ spustená
s nasledujúcimi hodnotami parametrov:
rozbaľArchív ( null , false , true )
Detaily nájdete v opise metódy rozbaľArchív . |
int |
rozbalArchiv(boolean prepísať)
Alias pre
rozbaľArchív . |
int |
rozbaľArchív(boolean prepísať)
Táto metóda sa správa rovnako ako jej „hlavná verzia“ spustená
s nasledujúcimi hodnotami parametrov:
rozbaľArchív ( null , prepísať,
true )
Detaily nájdete v opise metódy rozbaľArchív . |
int |
rozbalArchiv(String cestaNaRozbalenie)
Alias pre
rozbaľArchív . |
int |
rozbaľArchív(String cestaNaRozbalenie)
Táto metóda sa správa rovnako ako jej „hlavná verzia“ spustená
s nasledujúcimi hodnotami parametrov:
rozbaľArchív (cestaNaRozbalenie,
false , true )
Detaily nájdete v opise metódy rozbaľArchív . |
int |
rozbalArchiv(String cestaNaRozbalenie,
boolean prepísať)
Alias pre
rozbaľArchív . |
int |
rozbaľArchív(String cestaNaRozbalenie,
boolean prepísať)
Táto metóda sa správa rovnako ako jej „hlavná verzia“ spustená
s nasledujúcimi hodnotami parametrov:
rozbaľArchív (cestaNaRozbalenie, prepísať, true )
Detaily nájdete v opise metódy rozbaľArchív . |
int |
rozbalArchiv(String cestaNaRozbalenie,
boolean prepísať,
boolean vytvoriťCestu)
Alias pre
rozbaľArchív . |
int |
rozbaľArchív(String cestaNaRozbalenie,
boolean prepísať,
boolean vytvoriťCestu)
Rozbalí tento balíček do cieľovej lokality.
|
byte[] |
udajePolozky(String názovPoložky)
Alias pre
údajePoložky . |
byte[] |
údajePoložky(String názovPoložky)
Prečíta všetky dekomprimované údaje položky so zadaným názvom
a vráti ich vo forme poľa bajtov.
|
apacheAntZIP.ZipEntry |
ulozPolozku(String názovPoložky)
Alias pre
uložPoložku . |
apacheAntZIP.ZipEntry |
ulozPolozku(String názovPoložky,
boolean prepísať)
Alias pre
uložPoložku . |
apacheAntZIP.ZipEntry |
ulozPolozku(String názovPoložky,
boolean prepísať,
boolean vytvoriťCestu)
Alias pre
uložPoložku . |
apacheAntZIP.ZipEntry |
ulozPolozku(String názovPoložky,
String názovSúboru)
Alias pre
uložPoložku . |
apacheAntZIP.ZipEntry |
ulozPolozku(String názovPoložky,
String názovSúboru,
boolean prepísať)
Alias pre
uložPoložku . |
apacheAntZIP.ZipEntry |
ulozPolozku(String názovPoložky,
String názovSúboru,
boolean prepísať,
boolean vytvoriťCestu)
Alias pre
uložPoložku . |
apacheAntZIP.ZipEntry |
uložPoložku(String názovPoložky)
Táto metóda funguje rovnako ako jej variant
uložPoložku(názovPoložky, názovSúboru)
so zadaným parametrom názovSúboru rovným null . |
apacheAntZIP.ZipEntry |
uložPoložku(String názovPoložky,
boolean prepísať)
Táto metóda funguje rovnako ako jej variant
uložPoložku(názovPoložky,
názovSúboru, prepísať) so zadaným parametrom názovSúboru rovným null . |
apacheAntZIP.ZipEntry |
uložPoložku(String názovPoložky,
boolean prepísať,
boolean vytvoriťCestu)
Táto metóda funguje rovnako ako jej variant
uložPoložku(názovPoložky,
názovSúboru, prepísať, vytvoriťCestu) so zadaným parametrom názovSúboru rovným null . |
apacheAntZIP.ZipEntry |
uložPoložku(String názovPoložky,
String názovSúboru)
Uloží položku so zadaným názvom z archívu do súboru so zadaným
názvom, pričom namiesto názvu súboru môže byť zadaná hodnota
null . |
apacheAntZIP.ZipEntry |
uložPoložku(String názovPoložky,
String názovSúboru,
boolean prepísať)
Uloží položku so zadaným názvom z archívu do súboru so zadaným
názvom, pričom namiesto názvu súboru môže byť zadaná hodnota
null . |
apacheAntZIP.ZipEntry |
uložPoložku(String názovPoložky,
String názovSúboru,
boolean prepísať,
boolean vytvoriťCestu)
Uloží položku so zadaným názvom z archívu do súboru so zadaným
názvom, pričom namiesto názvu súboru môže byť zadaná hodnota
null . |
boolean |
umoznitAutomatickeOtvorenie()
Alias pre
umožniťAutomatickéOtvorenie . |
void |
umoznitAutomatickeOtvorenie(boolean umožniťAutomatickéOtvorenie)
Alias pre
umožniťAutomatickéOtvorenie . |
boolean |
umožniťAutomatickéOtvorenie()
Overí, či smie byť umožnené automatické otvorenie tohto archívu
inými inštanciami programovacieho rámca, ktoré ho budú chcieť použiť.
|
void |
umožniťAutomatickéOtvorenie(boolean umožniťAutomatickéOtvorenie)
Nastaví príznak toho, či smie byť umožnené automatické otvorenie
tohto archívu inými inštanciami programovacieho rámca, ktoré ho budú
chcieť použiť.
|
long |
velkostPolozky(String názovPoložky)
Alias pre
veľkosťPoložky . |
long |
veľkosťPoložky(String názovPoložky)
Vráti aktuálnu (nekomprimovanú) veľkosť položky (identifikovanej
názvom).
|
void |
zavri()
|
String[] |
zoznamPoloziek()
Alias pre
zoznamPoložiek . |
String[] |
zoznamPoložiek()
Vytvorí a vráti aktuálny zoznam položiek v archíve vo forme
poľa reťazcov.
|
public Archív()
otvorNaČítanie(String)
,
otvorNaZápis(String)
public Archív(String názov)
Konštruktor prijímajúci názov archívu. Po tomto type konštrukcie
môže programátor otvoriť archív metódami otvorNaČítanie()
a otvorNaZápis()
, prípade
prekryť názov súboru a to buď metódou názov
,
alebo otvorením metódami otvorNaČítanie(názov)
a otvorNaZápis(názov)
. Ak bude zadaný názov archívu nenulový (nemajúci
hodnotu null
), tak bude zároveň povolené automatické otvorenie
archívu.
Tip: Názov archívu môže byť od cesty oddelený
pomocou konštruktora, ktorý prijíma cestu a názov archívu zvlášť
Archív(cesta, názov)
, alebo s použitím
metódy cestaNaDisku
na dodatočné
nastavenie cesty k archívu.
názov
– meno archívunázov(String)
,
otvorNaČítanie()
,
otvorNaZápis()
public Archív(String cesta, String názov)
Konštruktor prijímajúci cestu na disku a názov archívu. Po tomto
type konštrukcie môže programátor otvoriť archív metódami otvorNaČítanie()
a otvorNaZápis()
, prípade prekryť cestu a/alebo názov súboru niektorou
zo súvisiacich metód: cestaNaDisku(cesta)
,
názov
, otvorNaČítanie(názov)
alebo otvorNaZápis(názov)
. Ak bude zadaný názov archívu nenulový (nemajúci
hodnotu null
), tak bude zároveň povolené automatické otvorenie
archívu.
cesta
– pracovná cesta (na pevnom disku)názov
– meno archívu (tiež)cestaNaDisku(String)
,
názov(String)
,
otvorNaČítanie()
,
otvorNaZápis()
public String názov()
Vráti aktuálny názov tohto archívu alebo null
, ak nie
je nastavený žiadny názov.
null
názov(String)
,
otvorNaČítanie()
,
otvorNaZápis()
public void názov(String názov)
Nastaví alebo zruší názov tohto archívu. Táto metóda zavrie
prípadný otvorený archív. Hodnota null
ruší nastavenie
názvu archívu.
Tip: Názov archívu môže byť od cesty oddelený
pomocou použitia metódy cestaNaDisku
alebo konštruktorom, ktorý prijíma cestu a názov archívu zvlášť:
Archív(cesta, názov)
.
názov
– nový názov archívu alebo null
názov()
,
otvorNaČítanie()
,
otvorNaZápis()
public boolean umožniťAutomatickéOtvorenie()
Overí, či smie byť umožnené automatické otvorenie tohto archívu
inými inštanciami programovacieho rámca, ktoré ho budú chcieť použiť.
Podrobnosti o tejto vlastnosti sú v opise metódy umožniťAutomatickéOtvorenie
umožniťAutomatickéOtvorenie(boolean)
,
Archív(String)
,
Archív(String, String)
public boolean umoznitAutomatickeOtvorenie()
Alias pre umožniťAutomatickéOtvorenie
.
public void umožniťAutomatickéOtvorenie(boolean umožniťAutomatickéOtvorenie)
Nastaví príznak toho, či smie byť umožnené automatické otvorenie
tohto archívu inými inštanciami programovacieho rámca, ktoré ho budú
chcieť použiť. Napríklad trieda Súbor
s pripojeným archívom. Automatické otvorenie
vyžaduje, aby mal archív priradený názov.
To sa dá docieliť rôznymi spôsobmi – prislúchajúcim konštruktorom
(Archív(názov)
alebo Archív(cesta, názov)
), metódou názov
alebo otvorením archívu niektorou z metód:
otvorNaČítanie(názov)
,
otvorNaZápis(názov)
. Predvolená hodnota
závisí od spôsobu konštrukcie. Platí zásada, že ak je pri konštrukcii
inštancie zadaný nenulový názov (nemajúci hodnotu null
),
tak je hodnota vlastnosti automatického otvorenia nastavená na
true
, inak na false
.
umožniťAutomatickéOtvorenie
– pravdivostná hodnota vyjadrujúca
stav povolenia tejto vlastnostiumožniťAutomatickéOtvorenie()
,
Archív(String)
,
Archív(String, String)
,
názov(String)
public void umoznitAutomatickeOtvorenie(boolean umožniťAutomatickéOtvorenie)
Alias pre umožniťAutomatickéOtvorenie
.
public String cestaVArchíve()
Vráti aktuálnu cestu nastavenú v rámci obsahu archívu alebo
null
, ak nie je nastavená žiadna cesta.
null
cestaVArchíve(String)
,
cestaNaDisku()
,
cestaNaDisku(String)
public String cestaVArchive()
Alias pre cestaVArchíve
.
public void cestaVArchíve(String cesta)
Nastaví alebo zruší novú cestu v rámci obsahu archívu. Hodnota
null
ruší nastavenie cesty. Cesta v archíve zameriava
(presmerúva) všetky metódy pracujúce s položkami archívu do tohto
vnútorného umiestnenia. Jej použitie treba zvážiť. V mnohých
prípadoch môže byť výhodné (napríklad pri pridávaní viacerých
položiek do rovnakého podpriečinka v archíve) a naopak, sú prípady,
v ktorých by mohlo jej nastavenie prekážať (napríklad pri
automatickom spracúvaní názvov položiek, ktoré už cestu v archíve
obsahujú – na zamedzenie duplicít alebo nedorozumení).
cesta
– nová cesta vo vnútri archívu alebo null
cestaVArchíve()
,
cestaNaDisku()
,
cestaNaDisku(String)
public void cestaVArchive(String cesta)
Alias pre cestaVArchíve
.
public String cestaNaDisku()
Vráti aktuálnu pracovnú cestu na pevnom disku alebo
null
, ak nie je nastavená žiadna cesta.
Pracovná cesta je použitá pri otváraní archívu (na čítanie alebo zápis) a pri pridávaní položiek z pevného disku.
null
cestaNaDisku(String)
,
cestaVArchíve()
,
cestaVArchíve(String)
,
otvorNaČítanie(String)
,
otvorNaZápis(String)
,
pridajPoložku(String, String)
public void cestaNaDisku(String cesta)
Nastaví alebo zruší pracovnú cestu na pevnom disku. Hodnota
null
ruší nastavenie cesty.
Pracovná cesta je použitá pri otváraní archívu (na čítanie alebo zápis) a pri pridávaní položiek z pevného disku.
cesta
– nová pracovná cesta alebo null
cestaNaDisku()
,
cestaVArchíve()
,
cestaVArchíve(String)
,
otvorNaČítanie(String)
,
otvorNaZápis(String)
,
pridajPoložku(String, String)
public void zavri() throws IOException
IOException
– ak vznikla chyba vo vstupno-výstupnej
operáciiotvorNaČítanie()
,
otvorNaZápis()
,
otvorNaČítanie(String)
,
otvorNaZápis(String)
,
otvorNaČítanie(String, String)
,
otvorNaZápis(String, String)
,
close()
public void close() throws IOException
Zavrie archív, ktorý bol predtým otvorený na čítanie alebo zápis. Táto metóda je definovaná ako
súčasť implementácie rozhrania Closeable
.
Vnútorne volá metódu zavri
.
close
v rozhraní Closeable
close
v rozhraní AutoCloseable
IOException
– ak vznikla chyba vo vstupno-výstupnej
operáciiotvorNaČítanie()
,
otvorNaZápis()
,
otvorNaČítanie(String)
,
otvorNaZápis(String)
,
otvorNaČítanie(String, String)
,
otvorNaZápis(String, String)
,
zavri()
public knižnica.apacheAntZIP.ZipFile otvorNaČítanie() throws IOException
Otvorí archív na čítanie. Archív musí mať vopred priradené meno
(buď priamo konštruktorom, alebo
metódou názov
). Ak súbor s archívom
nejestvuje, tak vznikne výnimka. Musí ísť o fyzický súbor na pevnom
disku umiestnený na aktuálnej lokalite, ceste určenej v názve archívu
alebo na ceste určenej vlastnosťou cestaNaDisku
.
ZipFile
na vykonanie prípadných
ďalších úprav (nastavenie komentára, úprava rôznych konfiguračných
položiek podľa vlastných potrieb a podobne)IOException
– ak vznikla chyba vo vstupno-výstupnej
operáciiArchív(String)
,
názov(String)
,
otvorNaČítanie(String)
,
otvorNaČítanie(String, String)
,
otvorNaZápis()
,
zavri()
,
close()
,
cestaNaDisku()
public knižnica.apacheAntZIP.ZipFile otvorNaCitanie() throws IOException
Alias pre otvorNaČítanie
.
IOException
public knižnica.apacheAntZIP.ZipOutputStream otvorNaZápis() throws IOException
Otvorí archív na zápis. Zapisovaný súbor bude vytvorený alebo
prepísaný buď na aktuálnom umiestnení, alebo na ceste určenej
vlastnosťou cestaNaDisku
(prípadne
inak, napríklad cestou určenou priamo v názve archívu).
Upozornenie: Ak použijete objekt ZipOutputStream
, ktorý je návratovou
hodnotou tejto metódy na pridávanie nových položiek, tak táto trieda
programovacieho rámca nebude schopná detegovať duplicitné položky, ani
spätne pracovať s pridanými položkami, pretože ich evidenciu vykonáva
vo vlastnej réžii nad rámec možností triedy ZipOutputStream
.
ZipOutputStream
na vykonanie
prípadných ďalších úprav (nastavenie komentára, úprava rôznych
konfiguračných položiek podľa vlastných potrieb a podobne)IOException
– ak vznikla chyba vo vstupno-výstupnej
operáciiArchív(String)
,
názov(String)
,
otvorNaZápis(String)
,
otvorNaZápis(String, String)
,
otvorNaČítanie()
,
zavri()
,
close()
,
cestaNaDisku()
public knižnica.apacheAntZIP.ZipOutputStream otvorNaZapis() throws IOException
Alias pre otvorNaZápis
.
IOException
public knižnica.apacheAntZIP.ZipFile otvorNaČítanie(String názov) throws IOException
Otvorí archív so zadaným menom na čítanie. Ak súbor s archívom
nejestvuje, tak vznikne výnimka. Musí ísť o fyzický súbor na pevnom
disku umiestnený na aktuálnej lokalite, ceste určenej v názve archívu
alebo na ceste určenej vlastnosťou cestaNaDisku
.
názov
– meno archívuZipFile
na vykonanie prípadných
ďalších úprav (nastavenie komentára, úprava rôznych konfiguračných
položiek podľa vlastných potrieb a podobne)IOException
– ak vznikla chyba vo vstupno-výstupnej
operáciiotvorNaČítanie()
,
otvorNaČítanie(String, String)
,
otvorNaZápis(String)
,
zavri()
,
close()
,
cestaNaDisku()
public knižnica.apacheAntZIP.ZipFile otvorNaCitanie(String názov) throws IOException
Alias pre otvorNaČítanie
.
IOException
public knižnica.apacheAntZIP.ZipOutputStream otvorNaZápis(String názov) throws IOException
Otvorí archív so zadaným menom na zápis. Zapisovaný súbor bude
vytvorený alebo prepísaný buď na aktuálnom umiestnení, alebo na
ceste určenej vlastnosťou cestaNaDisku
(prípadne inak, napríklad cestou určenou priamo v názve archívu).
Upozornenie: Ak použijete objekt ZipOutputStream
, ktorý je návratovou
hodnotou tejto metódy na pridávanie nových položiek, tak táto trieda
programovacieho rámca nebude schopná detegovať duplicitné položky, ani
spätne pracovať s pridanými položkami, pretože ich evidenciu vykonáva
vo vlastnej réžii nad rámec možností triedy ZipOutputStream
.
názov
– meno archívuZipOutputStream
na vykonanie
prípadných ďalších úprav (nastavenie komentára, úprava rôznych
konfiguračných položiek podľa vlastných potrieb a podobne)IOException
– ak vznikla chyba vo vstupno-výstupnej
operáciiotvorNaZápis()
,
otvorNaČítanie(String)
,
otvorNaZápis(String, String)
,
zavri()
,
close()
,
cestaNaDisku()
public knižnica.apacheAntZIP.ZipOutputStream otvorNaZapis(String názov) throws IOException
Alias pre otvorNaZápis
.
IOException
public knižnica.apacheAntZIP.ZipFile otvorNaČítanie(String cesta, String názov) throws IOException
Otvorí archív so zadaným menom na zadanej ceste na čítanie. Ďalšie
informácie sú v opisoch metód otvorNaČítanie
a cestaNaDisku
.
cesta
– pracovná cesta (na pevnom disku)názov
– meno archívuZipFile
na vykonanie prípadných
ďalších úprav (nastavenie komentára, úprava rôznych konfiguračných
položiek podľa vlastných potrieb a podobne)IOException
– ak vznikla chyba vo vstupno-výstupnej
operáciiotvorNaČítanie()
,
otvorNaČítanie(String)
,
otvorNaZápis(String, String)
,
zavri()
,
close()
,
cestaNaDisku()
public knižnica.apacheAntZIP.ZipFile otvorNaCitanie(String cesta, String názov) throws IOException
Alias pre otvorNaČítanie
.
IOException
public knižnica.apacheAntZIP.ZipOutputStream otvorNaZápis(String cesta, String názov) throws IOException
Otvorí archív so zadaným menom na zadanej ceste na zápis. Ďalšie
informácie sú v opisoch metód otvorNaČítanie
a cestaNaDisku
.
cesta
– pracovná cesta (na pevnom disku)názov
– meno archívuZipOutputStream
na vykonanie
prípadných ďalších úprav (nastavenie komentára, úprava rôznych
konfiguračných položiek podľa vlastných potrieb a podobne)IOException
– ak vznikla chyba vo vstupno-výstupnej
operáciiotvorNaZápis()
,
otvorNaZápis(String)
,
otvorNaČítanie(String, String)
,
zavri()
,
close()
,
cestaNaDisku()
public knižnica.apacheAntZIP.ZipOutputStream otvorNaZapis(String cesta, String názov) throws IOException
Alias pre otvorNaZápis
.
IOException
public int početPoložiek()
Vráti aktuálny počet položiek archívu.
public int pocetPoloziek()
Alias pre početPoložiek
.
public String[] zoznamPoložiek()
Vytvorí a vráti aktuálny zoznam položiek v archíve vo forme poľa reťazcov.
public String[] zoznamPoloziek()
Alias pre zoznamPoložiek
.
public static String dátumNaReťazec(long miliDátum)
Zostaví reťazec dátumu v predvolenom formáte zo zadaného počtu milisekúnd počítaných od začiatku takzvanej epochy – polnoc 1. januára 1970 greenwichského času (v našom časovom pásme to znamená jednu hodinu v noci).
Predvolený formát má tvar: «deň». «mesiac». «rok», «hodina»:«minúta»:«sekunda», pričom hodiny, minúty a sekundy sú zľava zarovnané nulou na dva znaky.
miliDátum
– dátum v milisekundách epochydátumNaReťazec(long, String)
,
reťazecNaDátum(String)
,
reťazecNaDátum(String, String)
,
dátumPoložky(String)
,
dátumPoložky(String, String)
,
dátumPoložkyAkoČíslo(String)
,
dátumPoložkyAkoČíslo(String, long)
public static String datumNaRetazec(long miliDátum)
Alias pre dátumNaReťazec
.
public static String dátumNaReťazec(long miliDátum, String formát)
Podľa zadaných údajov vytvorí reťazec dátumu. Prvý parameter je počet milisekúnd počítaných od začiatku takzvanej epochy – polnoc 1. januára 1970 greenwichského času (v našom časovom pásme to znamená jednu hodinu v noci) a druhý parameter určuje požadovaný formát vo veľmi priamočiarom tvare. Vo výslednom reťazci budú nahradené tieto rezervované písmená (záleží aj na ich veľkosti) nasledujúcimi údajmi: D - deň, M - mesiac, R alebo Y - rok, h - hodina, m - minúta, s - sekunda. Ak za sebou nasleduje niekoľko rovnakých písmen, tak výsledný číselný údaj bude zarovnaný nulami zľava na zadaný počet znakov.
miliDátum
– dátum v milisekundách epochyformát
– reťazec určujúci formát dátumudátumNaReťazec(long)
,
reťazecNaDátum(String)
,
reťazecNaDátum(String, String)
,
dátumPoložky(String)
,
dátumPoložky(String, String)
,
dátumPoložkyAkoČíslo(String)
,
dátumPoložkyAkoČíslo(String, long)
public static String datumNaRetazec(long miliDátum, String formát)
Alias pre dátumNaReťazec
.
public static long reťazecNaDátum(String dátum)
Vráti dátum v milisekundách počítaných od začiatku takzvanej epochy (polnoc 1. januára 1970 greenwichského času – v našom časovom pásme to znamená jednu hodinu v noci) podľa zadaného reťazca v predvolenom formáte.
Predvolený formát reťazca má tvar skupiny celých čísiel oddelených
ľubovoľnými nečíselnými znakmi. Jediné, na čom záleží, je poradie
výskytu číselných údajov v reťazci a to je stanovené takto: deň,
mesiac, rok, hodina, minúta, sekunda. Znak mriežky ('#'
)
je rezervovaný a je považovaný za jeden úplný prázdny číselný údaj,
to znamená, že reťazec "###"
znamená prázdny deň, mesiac
a rok (hoci medzi znakmi nie sú oddeľovače). Pri výskyte tohto znaku
je prislúchajúcemu údaju ponechaná predvolená hodnota. Chýbajúcim
údajom sú ponechané predvolené hodnoty (pri začatí rozpoznávania
dátumu je jeho hodnota nastavená na začiatok epochy).
dátum
– reťazec dátumu v predvolenom formátedátumNaReťazec(long)
,
dátumNaReťazec(long, String)
,
reťazecNaDátum(String, String)
,
dátumPoložky(String)
,
dátumPoložky(String, String)
,
dátumPoložkyAkoČíslo(String)
,
dátumPoložkyAkoČíslo(String, long)
public static long retazecNaDatum(String dátum)
Alias pre reťazecNaDátum
.
public static long reťazecNaDátum(String dátum, String formát)
Vráti dátum v milisekundách počítaných od začiatku takzvanej epochy (polnoc 1. januára 1970 greenwichského času — v našom časovom pásme to znamená jednu hodinu v noci) podľa zadaných reťazcov dátumu a formátu.
Formát musí mať tvar skupiny rezervovaných znakov oddelených ľubovoľnými nerezervovanými znakmi. Rezervované znaky formátu určia význam číselných údajov v dátume podľa tohto kľúča (záleží na veľkosti písmen): D - deň, M - mesiac, R alebo Y - rok, h - hodina, m - minúta, s - sekunda.
Podľa formátu je rozpoznaný dátum, pričom chýbajúcim údajom
sú ponechané predvolené hodnoty (pri začatí rozpoznávania sú
hodnoty údajov dátumu nastavené na začiatok epochy). V dátume (nie
vo formáte) je odlišne spracovaný jeden rezervovaný znak – mriežka
'#'
. Tento znak bude považovaný za jeden úplný prázdny
číselný údaj, to znamená, že reťazec "###"
bude znamenať
tri prázdne údaje a pri výskyte tohto znaku bude prislúchajúcemu
údaju (podľa poradia určeného formátom) ponechaná jeho predvolená
hodnota.
dátum
– reťazec dátumu v predvolenom formáteformát
– očakávaný formát dátumudátumNaReťazec(long)
,
dátumNaReťazec(long, String)
,
reťazecNaDátum(String)
,
dátumPoložky(String)
,
dátumPoložky(String, String)
,
dátumPoložkyAkoČíslo(String)
,
dátumPoložkyAkoČíslo(String, long)
public static long retazecNaDatum(String dátum, String formát)
Alias pre reťazecNaDátum
.
public String dátumPoložky(String názovPoložky)
Vráti dátum položky v reťazcovej podobe. Táto metóda používa na
prevod metódu dátumNaReťazec
, jej výstup
je preto rovnaký.
názovPoložky
– názov položky, ktorej dátum má byť vrátenýdátumNaReťazec
(s argumentom číselnej podoby dátumu položky
vrátenej metódou dátumPoložkyAkoČíslo
)dátumPoložky(String, String)
,
dátumPoložkyAkoČíslo(String)
,
dátumPoložkyAkoČíslo(String, long)
,
dátumNaReťazec(long)
,
dátumNaReťazec(long, String)
,
reťazecNaDátum(String)
,
reťazecNaDátum(String, String)
public String datumPolozky(String názovPoložky)
Alias pre dátumPoložky
.
public void dátumPoložky(String názovPoložky, String dátumPoložky)
Nastaví zadanej položke nový časový údaj jej vytvorenia. Údaj je očakávaný v tvare reťazca v presne stanovenom formáte – v tvare skupiny celých čísiel oddelených množinami znakov platných oddeľovačov (pre tento formát). Celočíselné údaje musia nasledovať v stanovenom poradí: deň, mesiac, rok, hodina, minúta, sekunda. Chýbajúcim údajom sú ponechané predvolené hodnoty (pri začatí rozpoznávania dátumu je jeho hodnota nastavená na začiatok takzvanej epochy – polnoc 1. januára 1970 greenwichského času – v našom časovom pásme to znamená jednu hodinu v noci).
Platnými znakmi oddeľovačov sú: medzera (' '
), pevná
medzera (' '
), bodka ('.'
), čiarka (','
), dvojbodka (':'
), tabulátor ('\t'
),
nový riadok ('\n'
), návrat vozíka ('\r'
)
a posun formulára ('\f'
). Za jeden oddeľovač je považovaná
ľubovoľne veľká skupina zložená z uvedených znakov. Znak mriežky
('#'
) je považovaný za jeden úplný prázdny číselný údaj,
to znamená, že reťazec "###"
znamená prázdny deň, mesiac
a rok (hoci medzi znakmi nie sú oddeľovače). Pri výskyte tohto znaku
je prislúchajúcemu údaju ponechaná predvolená hodnota (podľa začiatku
epochy spomenutého vyššie). Ostatné znaky (samozrejme okrem číslic) sú
považované za neplatné a sú ignorované (opomenúc fakt, že sa zapisujú
do denníka chýb).
Poznámka: Ak je archív otvorený len na čítanie, tak bude dátum zmenený len pre položku uloženú v pamäti. Položka v archíve uloženom na pevnom disku sa nezmení.
Príklady platných dátumov:
1 8 2001
: 1. 8. 2001, 01:00:00; 8.1.1999
:
8. 1. 1999, 01:00:00; 11.12.#,13:0:5
: 11. 12. 1970,
13:00:05; 11.#.1971,13:#
: 11. 1. 1971, 13:00:00.
Staršie dátumy však môžu v niektorých softvéroch spôsobiť chybné
zobrazenie.
Poznámka: Položka so zadaným názvom musí byť v archíve definovaná. Najmä pri archívoch určených na zápis to znamená, že najskôr musíme položku vytvoriť, až potom môžeme meniť jej parametre.
názovPoložky
– názov položky, ktorej dátum má byť nastavenýdátumPoložky
– reťazcový tvar dátumu položkydátumPoložky(String)
,
dátumPoložkyAkoČíslo(String)
,
dátumPoložkyAkoČíslo(String, long)
,
dátumNaReťazec(long)
,
dátumNaReťazec(long, String)
,
reťazecNaDátum(String)
,
reťazecNaDátum(String, String)
public void datumPolozky(String názovPoložky, String dátumPoložky)
Alias pre dátumPoložky
.
public long dátumPoložkyAkoČíslo(String názovPoložky)
Vráti dátum položky v číselnej podobe. Číselný údaj vyjadruje počet milisekúnd od začiatku takzvanej epochy – polnoc 1. januára 1970 greenwichského času – v našom časovom pásme to znamená jednu hodinu po polnoci.
názovPoložky
– názov položky, ktorej dátum má byť vrátenýGRobotException
– ak archív nie je otvorený (na čítanie alebo
zápis) alebo zadaná položka nebola nájdenádátumPoložky(String)
,
dátumPoložky(String, String)
,
dátumPoložkyAkoČíslo(String, long)
,
dátumNaReťazec(long)
,
dátumNaReťazec(long, String)
,
reťazecNaDátum(String)
,
reťazecNaDátum(String, String)
public long datumPolozkyAkoCislo(String názovPoložky)
Alias pre dátumPoložkyAkoČíslo
.
public void dátumPoložkyAkoČíslo(String názovPoložky, long dátum)
Nastaví zadanej položke nový časový údaj jej vytvorenia podľa zadaného číselného údaja. Údaj vyjadruje počet milisekúnd od začiatku takzvanej epochy – polnoc 1. januára 1970 greenwichského času – v našom časovom pásme to znamená jednu hodinu po polnoci.
Poznámka: Ak je archív otvorený len na čítanie, tak bude dátum zmenený len pre položku uloženú v pamäti. Položka v archíve uloženom na pevnom disku sa nezmení.
Poznámka: Položka so zadaným názvom musí byť v archíve definovaná. Najmä pri archívoch určených na zápis to znamená, že najskôr musíme položku vytvoriť, až potom môžeme meniť jej parametre.
názovPoložky
– názov položky, ktorej dátum má byť nastavenýdátum
– číselný tvar dátumu položky (počet milisekúnd
od začiatku epochy)GRobotException
– ak archív nie je otvorený (na čítanie alebo
zápis) alebo zadaná položka nebola nájdenádátumPoložky(String)
,
dátumPoložky(String, String)
,
dátumPoložkyAkoČíslo(String)
,
dátumNaReťazec(long)
,
dátumNaReťazec(long, String)
,
reťazecNaDátum(String)
,
reťazecNaDátum(String, String)
public void datumPolozkyAkoCislo(String názovPoložky, long dátum)
Alias pre dátumPoložkyAkoČíslo
.
public long veľkosťPoložky(String názovPoložky)
Vráti aktuálnu (nekomprimovanú) veľkosť položky (identifikovanej názvom).
názovPoložky
– názov položky, ktorej veľkosť má byť vrátenákomprimovanáVeľkosťPoložky(String)
public long velkostPolozky(String názovPoložky)
Alias pre veľkosťPoložky
.
public long komprimovanáVeľkosťPoložky(String názovPoložky)
Vráti komprimovanú veľkosť zadanej položky.
názovPoložky
– názov položky, ktorej komprimovaná veľkosť
má byť vrátenáveľkosťPoložky(String)
public long komprimovanaVelkostPolozky(String názovPoložky)
Alias pre komprimovanáVeľkosťPoložky
.
public String komentárPoložky(String názovPoložky)
Vráti komentár zadanej položky.
názovPoložky
– názov položky, ktorej komentár má byť vrátenýGRobotException
– ak archív nie je otvorený (na čítanie alebo
zápis) alebo zadaná položka nebola nájdenákomentárPoložky(String, String)
public String komentarPolozky(String názovPoložky)
Alias pre komentárPoložky
.
public void komentárPoložky(String názovPoložky, String komentár)
Nastaví zadanej položke nový komentár.
Poznámka: Ak je archív otvorený len na čítanie, tak bude komentár zmenený len pre položku uloženú v pamäti. Položka v archíve uloženom na pevnom disku sa nezmení.
Poznámka: Položka so zadaným názvom musí byť v archíve definovaná. Najmä pri archívoch určených na zápis to znamená, že najskôr musíme položku vytvoriť, až potom môžeme meniť jej parametre.
názovPoložky
– názov položky, ktorej komentár má byť nastavenýkomentár
– nový komentár položkyGRobotException
– ak archív nie je otvorený (na čítanie alebo
zápis) alebo zadaná položka nebola nájdenákomentárPoložky(String)
public void komentarPolozky(String názovPoložky, String komentár)
Alias pre komentárPoložky
.
public knižnica.apacheAntZIP.ZipEntry dajPoložku(String názovPoložky)
Vráti jestvujúcu položku archívu knižnice Apache Ant
ZipEntry
na prácu s ňou. Ak súbor nie
je otvorený na čítanie alebo zápis, alebo ak položka v archíve
nejestvuje, tak metóda vráti hodnotu null
.
názovPoložky
– názov položky, ktorá má byť vrátenáZipEntry
public knižnica.apacheAntZIP.ZipEntry dajPolozku(String názovPoložky)
Alias pre dajPoložku
.
public knižnica.apacheAntZIP.ZipEntry uložPoložku(String názovPoložky, String názovSúboru, boolean prepísať, boolean vytvoriťCestu)
Uloží položku so zadaným názvom z archívu do súboru so zadaným
názvom, pričom namiesto názvu súboru môže byť zadaná hodnota
null
. V takom prípade bude ako názov súboru použitý názov
položky.
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na čítanie.
Poznámka: V špeciálom prípade, keď položka
archívu reprezentuje priečinok, sú parametre prepísať
a vytvoriťCestu
ignorované a metóda sa správa tak, že
automaticky priečinok vytvorí, ak nejestvuje.
názovPoložky
– názov položky v archívenázovSúboru
– názov súboru na disku (môže byť null
)prepísať
– príznak povolenia prepísania jestvujúceho súboru na
disku (true
– cieľový súbor smie byť prepísaný, ak
jestvuje)vytvoriťCestu
– ak je true
, tak metóda automaticky vytvorí
cestu k cieľovému súboru, ak nejestvujeZipEntry
na vykonanie prípadných
ďalších úprav (nastavenie komentára položky, úprava dátumu podľa
vlastných potrieb a podobne)GRobotException
– ak archív nie je otvorený na čítanie; ak
zadaná položka nebola nájdená v archíve; ak cieľový súbor
jestvuje a nie je povolená možnosť jeho prepísania (prípadne
ak na disku jestvuje položka s rovnakým názvom, ktorá nie je
súborom a preto nemôže byť prepísaná)FileNotFoundException
– ak cieľová cesta nejestvuje
a nebolo povolené jej automatické vytvorenieuložPoložku(String, String, boolean)
,
uložPoložku(String, String)
,
uložPoložku(String, boolean, boolean)
,
uložPoložku(String, boolean)
,
uložPoložku(String)
public knižnica.apacheAntZIP.ZipEntry ulozPolozku(String názovPoložky, String názovSúboru, boolean prepísať, boolean vytvoriťCestu)
Alias pre uložPoložku
.
public knižnica.apacheAntZIP.ZipEntry uložPoložku(String názovPoložky, String názovSúboru, boolean prepísať)
Uloží položku so zadaným názvom z archívu do súboru so zadaným
názvom, pričom namiesto názvu súboru môže byť zadaná hodnota
null
. V takom prípade bude ako názov súboru použitý názov
položky. Metóda automaticky vytvorí cestu k cieľovému súboru (ak cesta
nejestvuje). Ak chcete tomuto správaniu zabrániť, tak použite metódu
uložPoložku(názovPoložky, názovSúboru, prepísať, false)
.
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na čítanie.
Poznámka: V špeciálom prípade, keď položka
archívu reprezentuje priečinok, je parameter prepísať
ignorovaný (pretože nemá význam uvažovať o jeho hodnote).
názovPoložky
– názov položky v archívenázovSúboru
– názov súboru na disku (môže byť null
)prepísať
– príznak povolenia prepísania jestvujúceho súboru na
disku (true
– cieľový súbor smie byť prepísaný, ak
jestvuje)ZipEntry
na vykonanie prípadných
ďalších úprav (nastavenie komentára položky, úprava dátumu podľa
vlastných potrieb a podobne)GRobotException
– ak archív nie je otvorený na čítanie; ak
zadaná položka nebola nájdená v archíve; ak cieľový súbor
jestvuje a nie je povolená možnosť jeho prepísania (prípadne
ak na disku jestvuje položka s rovnakým názvom, ktorá nie je
súborom a preto nemôže byť prepísaná)uložPoložku(String, String, boolean, boolean)
,
uložPoložku(String, String)
,
uložPoložku(String, boolean, boolean)
,
uložPoložku(String, boolean)
,
uložPoložku(String)
public knižnica.apacheAntZIP.ZipEntry ulozPolozku(String názovPoložky, String názovSúboru, boolean prepísať)
Alias pre uložPoložku
.
public knižnica.apacheAntZIP.ZipEntry uložPoložku(String názovPoložky, String názovSúboru)
Uloží položku so zadaným názvom z archívu do súboru so zadaným
názvom, pričom namiesto názvu súboru môže byť zadaná hodnota
null
. V takom prípade bude ako názov súboru použitý názov
položky. Cieľový súbor nesmie byť touto metódou prepísaný. Ak
jestvuje, tak vznikne výnimka. (Ak chcete cieľový súbor prepísať,
použite metódu uložPoložku(názovPoložky, názovSúboru, true)
.) Metóda automaticky
vytvorí cestu k cieľovému súboru (ak cesta nejestvuje). Ak chcete
tomuto správaniu zabrániť, tak použite iný variant tejto metódy
(napríklad uložPoložku(názovPoložky, názovSúboru, prepísať, false)
).
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na čítanie.
názovPoložky
– názov položky v archívenázovSúboru
– názov súboru na disku (môže byť null
)ZipEntry
na vykonanie prípadných
ďalších úprav (nastavenie komentára položky, úprava dátumu podľa
vlastných potrieb a podobne)GRobotException
– ak archív nie je otvorený na čítanie; ak
zadaná položka nebola nájdená v archíve; ak cieľový súbor
jestvujeuložPoložku(String, String, boolean, boolean)
,
uložPoložku(String, String, boolean)
,
uložPoložku(String, boolean, boolean)
,
uložPoložku(String, boolean)
,
uložPoložku(String)
public knižnica.apacheAntZIP.ZipEntry ulozPolozku(String názovPoložky, String názovSúboru)
Alias pre uložPoložku
.
public knižnica.apacheAntZIP.ZipEntry uložPoložku(String názovPoložky, boolean prepísať, boolean vytvoriťCestu)
Táto metóda funguje rovnako ako jej variant uložPoložku(názovPoložky,
názovSúboru, prepísať, vytvoriťCestu)
so zadaným parametrom názovSúboru
rovným null
. Podrobnejšie informácie sú v opise
uvedenej metódy.
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na čítanie.
Poznámka: V špeciálom prípade, keď položka
archívu reprezentuje priečinok, sú parametre prepísať
a vytvoriťCestu
ignorované a metóda sa správa tak, že
automaticky priečinok vytvorí, ak nejestvuje.
názovPoložky
– názov položky v archíveprepísať
– príznak povolenia prepísania jestvujúceho súboruvytvoriťCestu
– ak je true
, tak metóda automaticky vytvorí
cestu k cieľovému súboru, ak nejestvujeZipEntry
na vykonanie prípadných
ďalších úpravGRobotException
– ak archív nie je otvorený na čítanie; ak
zadaná položka nebola nájdená v archíve; ak cieľový súbor
jestvuje a nie je povolená možnosť jeho prepísania (prípadne
ak na disku jestvuje položka s rovnakým názvom, ktorá nie je
súborom a preto nemôže byť prepísaná)FileNotFoundException
– ak cieľová cesta nejestvuje
a nebolo povolené jej automatické vytvorenieuložPoložku(String, String, boolean, boolean)
,
uložPoložku(String, String, boolean)
,
uložPoložku(String, String)
,
uložPoložku(String, boolean)
,
uložPoložku(String)
public knižnica.apacheAntZIP.ZipEntry ulozPolozku(String názovPoložky, boolean prepísať, boolean vytvoriťCestu)
Alias pre uložPoložku
.
public knižnica.apacheAntZIP.ZipEntry uložPoložku(String názovPoložky, boolean prepísať)
Táto metóda funguje rovnako ako jej variant uložPoložku(názovPoložky,
názovSúboru, prepísať)
so zadaným parametrom názovSúboru
rovným null
. Podrobnejšie informácie sú v opise
uvedenej metódy.
Poznámka: V špeciálom prípade, keď položka
archívu reprezentuje priečinok, je parameter prepísať
ignorovaný (pretože nemá význam uvažovať o jeho hodnote).
názovPoložky
– názov položky v archíveprepísať
– príznak povolenia prepísania jestvujúceho súboruZipEntry
na vykonanie prípadných
ďalších úpravGRobotException
– ak archív nie je otvorený na čítanie; ak
zadaná položka nebola nájdená v archíve; ak cieľový súbor
jestvuje a nie je povolená možnosť jeho prepísania (prípadne
ak na disku jestvuje položka s rovnakým názvom, ktorá nie je
súborom a preto nemôže byť prepísaná)uložPoložku(String, String, boolean, boolean)
,
uložPoložku(String, String, boolean)
,
uložPoložku(String, String)
,
uložPoložku(String, boolean, boolean)
,
uložPoložku(String)
public knižnica.apacheAntZIP.ZipEntry ulozPolozku(String názovPoložky, boolean prepísať)
Alias pre uložPoložku
.
public knižnica.apacheAntZIP.ZipEntry uložPoložku(String názovPoložky)
Táto metóda funguje rovnako ako jej variant uložPoložku(názovPoložky, názovSúboru)
so zadaným parametrom názovSúboru
rovným null
.
Podrobnejšie informácie sú v opise uvedenej metódy.
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na čítanie.
názovPoložky
– názov položky v archíveZipEntry
na vykonanie prípadných
ďalších úpravGRobotException
– ak archív nie je otvorený na čítanie; ak
zadaná položka nebola nájdená v archíve; ak cieľový súbor
jestvujeuložPoložku(String, String, boolean, boolean)
,
uložPoložku(String, String, boolean)
,
uložPoložku(String, String)
,
uložPoložku(String, boolean, boolean)
,
uložPoložku(String, boolean)
public knižnica.apacheAntZIP.ZipEntry ulozPolozku(String názovPoložky)
Alias pre uložPoložku
.
public int rozbaľArchív(String cestaNaRozbalenie, boolean prepísať, boolean vytvoriťCestu)
Rozbalí tento balíček do cieľovej lokality. Metóda umožňuje spresniť pravidlá, ktorými sa bude riadiť pri procese rozbaľovania. Konkrétne, či môže prepisovať jestvujúce súbory a vytvárať nejestvujúce priečinky, ktoré nie sú explicitne vložené ako položky v archíve (čiže výsledok nezávisí len od parametrov tejto metódy, ale aj od situácie v rámci konkrétneho archívu).
Návratová hodnota metódy vyjadruje počet položiek, ktoré sa podarilo úspešne rozbaliť (alebo vytvoriť). Automaticky vytvorené priečinky, ktoré nie sú položkami archívu (pretože toto nie je v archívoch povinné), ale sú len súčasťou relatívnych ciest položiek archívu, nie sú do tohto počtu zarátané.
Ak otvorenie archívu zlyhá (prípadne zlyhá iná časť inicializácie procesu), tak je návratová hodnota metódy rovná −1.
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený alebo otvoriteľný na čítanie, to znamená, že musí jestvovať na umiestnení, na ktoré smeruje táto inštancia a nesmie byť otvorený na zápis.
Poznámka: Podobne ako pri metóde uložPoložku
, aj počas
tohto procesu rozbaľovania v prípade, keď niektorá položka archívu
reprezentuje priečinok, sú hodnoty parametrov prepísať
a vytvoriťCestu
pre túto položku ignorované a priečinok je
automaticky vytvorený, ak nejestvuje. (Práve tieto priečinky sú
zarátané do návratovej hodnoty tejto metódy – pretože sú
reprezentované položkami v archíve.)
cestaNaRozbalenie
– cieľová cesta na rozbalenie tohto archívu;
ak nie je zadaná (má hodnotu null
), tak je obsah archívu
rozbalený na aktuálnom umiestnení (na spúšťacej ceste aplikácie)prepísať
– príznak povolenia prepísania jestvujúcich súborov na
disku (true
– jestvujúce cieľové súboru smú byť
prepísané, ak jestvujú)vytvoriťCestu
– ak je true
, tak metóda bude automaticky
vytvárať cesty k rozbaľovaným súborom (ak nejestvujú)public int rozbalArchiv(String cestaNaRozbalenie, boolean prepísať, boolean vytvoriťCestu)
Alias pre rozbaľArchív
.
public int rozbaľArchív(String cestaNaRozbalenie, boolean prepísať)
Táto metóda sa správa rovnako ako jej „hlavná verzia“ spustená s nasledujúcimi hodnotami parametrov:
rozbaľArchív
(cestaNaRozbalenie, prepísať,
true
)
Detaily nájdete v opise metódy rozbaľArchív
.
cestaNaRozbalenie
– cieľová cesta na rozbalenie tohto archívuprepísať
– príznak povolenia prepísania jestvujúcich súborov na
diskupublic int rozbalArchiv(String cestaNaRozbalenie, boolean prepísať)
Alias pre rozbaľArchív
.
public int rozbaľArchív(String cestaNaRozbalenie)
Táto metóda sa správa rovnako ako jej „hlavná verzia“ spustená s nasledujúcimi hodnotami parametrov:
rozbaľArchív
(cestaNaRozbalenie,
false
,
true
)
Detaily nájdete v opise metódy rozbaľArchív
.
cestaNaRozbalenie
– cieľová cesta na rozbalenie tohto archívupublic int rozbalArchiv(String cestaNaRozbalenie)
Alias pre rozbaľArchív
.
public int rozbaľArchív(boolean prepísať)
Táto metóda sa správa rovnako ako jej „hlavná verzia“ spustená s nasledujúcimi hodnotami parametrov:
rozbaľArchív
(
null
, prepísať,
true
)
Detaily nájdete v opise metódy rozbaľArchív
.
prepísať
– príznak povolenia prepísania jestvujúcich súborov na
diskupublic int rozbalArchiv(boolean prepísať)
Alias pre rozbaľArchív
.
public int rozbaľArchív()
Táto metóda sa správa rovnako ako jej „hlavná verzia“ spustená s nasledujúcimi hodnotami parametrov:
rozbaľArchív
(
null
,
false
,
true
)
Detaily nájdete v opise metódy rozbaľArchív
.
public int rozbalArchiv()
Alias pre rozbaľArchív
.
public byte[] údajePoložky(String názovPoložky)
Prečíta všetky dekomprimované údaje položky so zadaným názvom a vráti ich vo forme poľa bajtov.
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na čítanie.
názovPoložky
– názov položky, ktorej údaje majú byť prečítané
(pozri aj zoznamPoložiek
)GRobotException
– ak archív nie je otvorený na čítanie alebo
zadaná položka nebola nájdenápublic byte[] udajePolozky(String názovPoložky)
Alias pre údajePoložky
.
public Obrázok obrázok(String názovPoložky)
Prečíta do vnútornej pamäte sveta obrázok z tohto archívu a vytvorí
z neho nový objekt typu Obrázok
. Táto metóda
v skutočnosti volá metódu čítaj(archív, názovPoložky)
, ktorá sa spolieha na fungovanie ďalších
metód rámca.
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na čítanie.
Pozri aj príklad v opise metódy Obrázok.čítaj(archív, názovPoložky)
.
názovPoložky
– názov položky, z ktorej má byť prečítaný obrázok,
prípadne sekvencia animácienull
, ak
pokus o prečítanie sekvencie súborov zlyhal z pamäťových dôvodovGRobotException
– ak archív nie je otvorený na čítanie
(identifikátor archiveNotOpenForReading
) alebo zadaná
položka s obrázkom nebola nájdená (identifikátor
entryNotFound
)Obrázok.čítaj(Archív, String)
,
Obrázok.ulož(Archív, String)
,
pridajPoložku(String, Obrázok)
public knižnica.apacheAntZIP.ZipEntry pridajPoložku(String názovPoložky, String názovSúboru) throws IOException
Pridá do archívu údaje zo zadaného súboru. Metóda dovoľuje zmeniť
názov položky v archíve – ak prvý parameter (názovPoložky
)
nie je null
, tak zadaný názov bude použitý namiesto
pôvodného názvu súboru. V opačnom prípade bude na pomenovanie položky
v archíve použitý pôvodný názov súboru (z druhého parametra –
názovSúboru
).
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na zápis.
názovPoložky
– názov pridávanej položky (smie byť null
;
v tom prípade bude použitý názov súboru)názovSúboru
– názov súboru, z ktorého majú byť prečítané
údaje pridávanej položkyZipEntry
na vykonanie prípadných
ďalších úprav (nastavenie komentára položky, úprava dátumu podľa
vlastných potrieb a podobne)IOException
– ak vznikla chyba vo vstupno-výstupnej
operáciiGRobotException
– ak archív nie je otvorený na zápis, ak
bola namiesto názvu súboru zadaná hodnota null
alebo
v prípade pokusu o vloženie duplicitnej položkypridajPoložku(String, byte[])
,
pridajPoložku(String, Obrázok)
,
cestaVArchíve()
,
cestaNaDisku()
public knižnica.apacheAntZIP.ZipEntry pridajPolozku(String názovPoložky, String názovSúboru) throws IOException
Alias pre pridajPoložku
.
IOException
public knižnica.apacheAntZIP.ZipEntry pridajPoložku(String názovPoložky, byte[] údajePoložky) throws IOException
Zapíše údaje zadané vo forme poľa bajtov do položky archívu so zadaným názvom.
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na zápis.
názovPoložky
– názov pridávanej položky (nesmie byť zamlčaný)údajePoložky
– údaje pridávanej položky (vo forme poľa bajtov)ZipEntry
na vykonanie prípadných
ďalších úprav (nastavenie komentára položky, úprava dátumu podľa
vlastných potrieb a podobne)IOException
– ak vznikla chyba vo vstupno-výstupnej
operáciiGRobotException
– ak archív nie je otvorený na zápis, ak
bol názov položky zamlčaný (bola zadaná hodnota null
)
alebo v prípade pokusu o vloženie duplicitnej položkypridajPoložku(String, String)
,
pridajPoložku(String, Obrázok)
,
cestaVArchíve()
,
cestaNaDisku()
public knižnica.apacheAntZIP.ZipEntry pridajPolozku(String názovPoložky, byte[] údajePoložky) throws IOException
Alias pre pridajPoložku
.
IOException
public knižnica.apacheAntZIP.ZipEntry[] pridajPoložku(String názovPoložky, Obrázok obrázok) throws IOException
Zapíše obrázok do položky archívu so zadaným názvom. Táto metóda
v skutočnosti volá metódu Obrázok.ulož(archív, názovPoložky)
, ktorá sa spolieha na fungovanie
ďalších metód rámca.
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na zápis.
Pozri aj príklad v opise metódy Obrázok.čítaj(archív, názovPoložky)
.
názovPoložky
– názov pridávanej položky (nesmie byť zamlčaný)obrázok
– obrázok, ktorého obsah má byť pridaný ako ďalšia položka
(prípadne položky)ZipEntry
na vykonanie prípadných
ďalších úprav (nastavenie komentárov položiek, úprava ich dátumu
podľa vlastných potrieb a podobne)IOException
– ak vznikla chyba vo vstupno-výstupnej
operáciiGRobotException
– ak bol zadaný názov súboru s neplatnou
príponou, ak archív nie je otvorený na zápis, ak bol názov
položky zamlčaný (bola zadaná hodnota null
)
alebo v prípade pokusu o vloženie duplicitnej položkypridajPoložku(String, String)
,
pridajPoložku(String, byte[])
,
cestaVArchíve()
,
cestaNaDisku()
,
Obrázok.čítaj(Archív, String)
,
Obrázok.ulož(Archív, String)
,
obrázok(String)
public knižnica.apacheAntZIP.ZipEntry[] pridajPolozku(String názovPoložky, Obrázok obrázok) throws IOException
Alias pre pridajPoložku
.
IOException
public knižnica.apacheAntZIP.ZipEntry pridajPriečinok(String názov) throws IOException
Pridá do archívu položku reprezentujúcu priečinok. Pozor! Metóda pridá iba jednu položku vo význame priečinka. Metóda nepridáva do archívu prípadný obsah (vnorené položky) jestvujúceho priečinka na disku. (V skutočnosti priečinok na disku ani nemusí jestvovať a do archívu ho ako položku môžeme pridať.)
Prítomnosť tohto druhu položiek v archíve je nepovinná. Priečinky a podpriečinky sú softvérmi pracujúcimi s archívmi automaticky rozpoznávané vďaka ukladaniu ciest k súborom, ktoré sú v rámci archívu pripojené pred názvy položiek (t. j. zbalených súborov). Avšak pridanie položky priečinka má význam, a to v prípade, že chceme do archívu vložiť prázdny priečinok (ktorý sa pri rozbaľovaní archívu automaticky vytvorí).
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na zápis.
názov
– názov pridávaného priečinka (nesmie byť zamlčaný)ZipEntry
na vykonanie prípadných
ďalších úprav (nastavenie komentára položky, úprava dátumu podľa
vlastných potrieb a podobne)IOException
– ak vznikla chyba vo vstupno-výstupnej
operáciiGRobotException
– ak archív nie je otvorený na zápis, ak
bol názov položky zamlčaný (bola zadaná hodnota null
)
alebo v prípade pokusu o vloženie duplicitnej položkypublic knižnica.apacheAntZIP.ZipEntry pridajPriecinok(String názov) throws IOException
Alias pre pridajPriečinok
.
IOException
public String komentár()
Vráti komentár otvoreného archívu, ak je definovaný.
V opačnom prípade vráti hodnotu null
.
null
komentár(String)
public void komentár(String komentár)
Nastaví nový komentár archívu.
Upozornenie: Táto metóda je
použiteľná len v prípade, že je archív otvorený na
zápis. (V opačnom
prípade vznikne výnimka
"archiveNotOpenForWriting"
.)
komentár
– nový komentár archívuGRobotException
– ak archív nie je otvorený na zápiskomentár()