Změna stylu: Standardní Dřevo Jaro Léto Léto2 Potápěč :-) Údolí stínů

Objekt Folder

Tento objekt představuje složku (adresář) v souborovém systému serveru. Zprostředkovává přístup k informacím o složce a poskytuje metody pro manipulaci se složkami.

Protože se nejedná a vnitřní objekt ASP, je nutné před jeho použitím získat jeho instanci. Instanci objektu Folder můžeme získat čtyřmi způsoby:

Příklad vytvoření objektu Folder:

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
  'Objekt souborového systému
Set objFolder = objFSO.GetFolder("C:\pokus")
  'Objekt Folder zastupující složku C:\pokus

V dalším textu budeme předpokládat, že máme instanci objektu Folder pojmenovanou objFolder.

Metody

Objekt Folder poskytuje metody pro vykonávání běžných operací nad danou složkou.

Copy

Metoda Copy zkopíruje složku a vše, co obsahuje, do jiné zadané složky. Syntaxe je:

objFolder.Copy(cesta[, přepsat])

Parametr cesta určuje umístění, kam se má složka zkopírovat.

Končí-li cesta zpětným lomítkem "\", znamená cesta složku, do níž se má vytvořit kopie původní složky s původním jménem. V opačném případě je parametr považován za úplnou cestu obsahující i nové jméno složky a vytvoří se kopie složky s tímto novým jménem.

Parametr přepsat určuje, zda má být cílová složka přepsána, pokud již existuje.

Při vynechání parametru se použije implicitní hodnota true. Pokud má parametr hodnotu false a cílová složka již existuje, dojde k chybě.

Příklad zkopírování složky slozka1 v kořenové složce disku C pod nový názvem slozka2:

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
  'Objekt souborového systému
Set objFolder = objFSO.GetFile("C:\slozka1")
  'Objekt Folder zastupující složku C:\slozka1
objFile.Copy("C:\slozka2")
  'Zkopírování slozky

Delete

Metoda Delete umožňuje smazat prázdnou složku. Tato metoda má nepovinný parametr, který určuje, zda má být složka smazána i v případě, že je určena pouze pro čtení. Pokud parametr neuvedeme, použije se implicitní hodnota false, která znemožní smazání složek určených pouze pro čtení.

Pokud nemá uživatel nastavena práva, umožňující smazání dané složky, způsobí příkaz objFolder.Delete(true) chybu.

Move

Metoda Move slouží k přesunu nebo přejmenování složky. Syntaxe je stejná jako u metody Copy, tedy:

objFolder.Move(cesta[, přepsat])

Končí-li zadaná cesta zpětným lomítkem, je považována za složku, do níž má být daná složka přesunuta. V opačném případě se část cesty za posledním lomítkem použije jako nové jméno složky.

Nepovinný parametr přepsat určuje, zda se má cílová složka (v případě, že již existuje) přepsat.

Příklad přejmenování složky slozka1 v kořenové složce disku C na název slozka2:

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
  'Objekt souborového systému
Set objFolder = objFSO.GetFile("C:\slozka1")
  'Objekt Folder zastupující složku C:\slozka1
objFolder.Move("C:\slozka2")
  'Přejmenování složky

CreateTextFile

Tato metoda vytvoří a otevře soubor a vrátí objekt TextStream, který slouží pro čtení ze souboru, zápis do souboru nebo přidávání na konec souboru.

Metoda má syntaxi:

objTextStream = objFolder.CreateTextFile(jméno, [přepsat], [unicode])

Parametr jméno určuje, jak se má pojmenovat nově vytvářený soubor.

Nepovinný parametr přepsat určuje, zda má být soubor (pokud již existuje) přepsán. Implicitní hodnota je false.

Parametr unicode určuje, zda má být soubor uložen jako text v kódování Unicode. Implicitní hodnota je false.

Atributy

Atribut Attributes

Atribut Attributes slouží pro zjištění a nastavování systémových atributů složky.

Celočíselná hodnota atributu může být součet libovolné kombinace následujících hodnot:

Hodnota Atribut Popis Povolené operace nad atributem
0 Normal Běžný soubor Žádné
1 ReadOnly Soubor pouze pro čtení Čtení i nastavení
2 Hidden Skrytý soubor Čtení i nastavení
4 System Systémový soubor Čtení i nastavení
8 Volume Jméno disku Čtení
16 Directory Adresář (složka) Čtení
32 Archive Změněno od poslední zálohy Čtení i nastavení
1024 Alias Odkaz nebo zástupce Čtení
2048 Compressed Komprimovaný soubor Čtení

Hodnota atributu Attributes je určena jako součet hodnot všech atributů, které se týkají dané složky. Každá složka má nastaven atribut Directory. Například skryté složce určené pouze pro čtení bude odpovídat hodnota 19.

Pro zjištění konkrétního bitu se používá operátor And. Pokud bychom chtěli zjistit, zda je daná složka určená pouze pro čtení a skrytá, použili bychom následující kód:

atributy = objFolder.Attributes
If (atributy And 19) Then
  Response.Write "Složka je skrytá a je pouze pro čtení"
Else
  Response.Write "Nejde o skrytou složku určenou pouze pro čtení."
End If

Atribut DateCreated

Tento atribut vrací datum a čas vytvoření složky.

Atribut DateLastAccessed

Tento atribut vrací datum a čas posledního přístupu ke složce.

Atribut DateLastModified

Tento atribut obsahuje datum a čas poslední modifikace složky.

Atribut Drive

Tento atribut vrací objekt Drive reprezentující disk, na němž je složka umístěna.

Atribut Files

Atribut Files vrací kolekci Files obsahující všechny objekty File pro všechny soubory ve složce (kromě souborů v dalších podsložkách).

Atribut IsRootFolder

Tento atribut má hodnotu true, pokud objekt představuje kořenovou složku. V opačném případě má hodnotu false.

Atribut Name

Atribut Name vrací jméno složky. Nastavením hodnoty atributu způsobíme přejmenování složky.

Pokud k přejmenování složky nemáme nastavena práva, dojde k chybě.

Atribut ParentFolder

Tento atribut vrací objekt Folder, reprezentující nadřazenou složku.

Atribut Path

Tento atribut vrací celou cestu ke složce. V cestě se mohou vyskytovat tzv. dlouhé názvy.

Atribut ShortName

Tento atribut vrací krátké jméno složky ve stylu operačního systému MS-DOS. Toto jméno má nejvýše 8 znaků, plus 3 znaky pro příponu (takzvaný formát 8.3). Pro složku NejakaSlozka bude tento atribut nejčastěji obsahovat hodnotu "Nejaka~1". Číslo za vlnovkou se může lišit, pokud bude ve složce více podsložek s jménem, které by se převedlo na stejné krátké jméno.

Atribut ShortPath

Tento atribut obsahuje absolutní cestu k složce. Tato cesta obsahuje pouze tzv. krátké názvy složek ve formátu 8.3 popsaném u předchozího atributu.

Atribut Size

Atribut Size udává velikost složky v bytech. Do velikosti složky jsou započítány velikosti všech souborů a podsložek dané složky.

Atribut SubFolders

Tento atribut vrací kolekci Folders obsahující objekty Folder pro každou podsložku nacházející se v dané složce.

Atribut Type

Tento atribut vrací textový popis typu složky, pokud je znám. Atribut může mít například hodnotu "File Folder", "System Folder" nebo "Recycle Bin".

Kolekce Folders

Narozdíl od většiny běžných kolekcí má kolekce Folders pouze dva atributy a žádné metody nebo události.

Kolekci Folders můžeme získat přes atribut SubFolders objektu Folder.

Atributy

Atribut Count

Udává počet podsložek ve složce.

Atribut Item

Vrací objekt Folder reprezentující složku se zadaným jménem.

Objekt Folder pro podložku podslozka získáme příkazem:

Set objFolder2 = objFolder.SubFolders.Item("podslozka")


Hlavní stránka