Druhý díl naleznete zde.
.NET Framework nám nabízí řadu užitečných tříd, které nám mohou značně usnadnit práci a zbavit nás případných chyb. Určitě stojí za zmínku funkce pro práci s textovou reprezntací jmen souborů a jejich umístění v souborovém systému. Slouží pro to třída System.IO.Path. Jejich 15 funkcí rozdělím na 2 příspěvky.
1/15 - System.IO.Path.Combine(cesta1 as String, cesta2 as String) as String - Spojení dvou cest
Tato funkce spojuje dvě cesty, popřípadě cestu a jméno souboru do jedné. Super je, že nemusíme řešit, zda cesta končí zpětným lomítkem nebo ne. Příklad:
' Výsledek: c:\adresar\podadresar\jmenosouboru.txt
System.IO.Path.Combine("c:\adresar\podadresar\", "jmenoSouboru.txt")
' Výsledek: c:\adresar\podadresar\jmenosouboru.txt
System.IO.Path.Combine("c:\adresar\podadresar", "jmenoSouboru.txt")
' Výsledek: c:\adresar\podadresar\dalsipodadresar\jmenosouboru.txt
System.IO.Path.Combine("c:\adresar\podadresar", "dalsipodadresar\jmenoSouboru.txt")
2/15 - System.IO.Path.GetDirectoryName(cesta as String) as String - Jméno složky
Slouží pro zjištění cesty, kde se soubor nachází. Příklad:
' Výsledek: c:\adresar\podadresar\
System.IO.Path.GetDirectoryName("c:\adresar\podadresar\soubor.txt")
' Výsledek: c:\
System.IO.Path.GetDirectoryName("c:\soubor.txt")
3/15 - System.IO.Path.GetExtension(cesta as String) as String - Zjištění přípony
Zjišťuje příponu souboru z celé cesty nebo jen jména souboru. Pokud přípona není, vrací prázdný řetězec. Příklad:
' Výsledek: .txt
System.IO.Path.GetExtension("c:\soubor.txt")
' Výsledek: .doc
System.IO.Path.GetExtension("c:\slozka.neco\soubor.doc")
' Výsledek: (prázdný)
System.IO.Path.GetExtension("c:\slozka\souborBezPripony")
4/15 - System.IO.Path.GetFileName(cesta as String) as String - Zjištění jména souboru
Zjišťuje jméno souboru i s jeho příponou z celé cesty nebo jen jména souboru. Pokud se jedná o jméno adresáře, vrací prázdný řetězec. Příklad:
' Výsledek: soubor.txt
System.IO.Path.GetFileName("c:\slozka\soubor.txt")
' Výsledek: (prázdný)
System.IO.Path.GetFileName("c:\slozka\")
5/15 - System.IO.Path.GetFileNameWithoutExtension(cesta as String) as String - Zjištění jména souboru bez přípony
Zjišťuje jméno souboru bez jeho přípony z celé cesty nebo jen jména souboru. Pokud se jedná o jméno adresáře, vrací prázdný řetězec. Příklad:
' Výsledek: soubor
System.IO.Path.GetFileNameWithoutExtension("c:\slozka\soubor.txt")
6/15 - System.IO.Path.GetFullPath(cesta as String) as String - Zjištění plné cesty z relativní
Vrací jméno souboru v jeho plném formátu i s cestou. Pokud uvedete relativní cestu, bere se ve vztahu k aktuálnímu adresáři (defaultně ten, ze kterého se spustil exe soubor). Příklad:
' Výsledek: c:\temp\Console3\bin\Debug\ahoj.txt
System.IO.Path.GetFullPath("ahoj.txt");
' Výsledek: c:\temp\Console3\ahoj.txt (relativní cesta o 2 adresáře nahoru)
System.IO.Path.GetFullPath("..\..\ahoj.txt");
' Výsledek: c:\ahoj.txt (znak "\" na začátku znamená kořenový adresář)
System.IO.Path.GetFullPath("\ahoj.txt");
' Výsledek: c:\slozka\ahoj.txt
System.IO.Path.GetFullPath("c:\slozka\ahoj.txt")
' Výsledek: f:\plnaCesta\ahoj.txt
System.IO.Path.GetFullPath("f:\plnaCesta\ahoj.txt")
7/15 - System.IO.Path.GetInvalidFileNameChars() as Char() - Neplatné znaky jména souboru
Vrací statické pole znaků, které se nesmí vyskytovat ve jménu souboru. Vhodné pokud chceme kontrolovat validní jména souborů. Namátkou to jsou: *, ?, \, >, " atp.
8/15 - System.IO.Path.GetInvalidPathChars() as Char() - Neplatné znaky cesty
Vrací statické pole znaků, které se nesmí vyskytovat v cestě k souboru. Prakticky identicté jako GetInvalidFileNameChars, jen s tím rozdílem, že pole neobsahuje znaky, které slouží pro zapsání cesty (zpětné lomítko atp.).
Druhý díl naleznete zde.