Pracovný adresár sa vzťahuje na umiestnenie v súborovom systéme, kde je aplikácia momentálne spustená. Keďže tento adresár funguje ako začiatočný bod pre všetky súvisiace činnosti so súbormi a priečinkami, je nevyhnutné pochopiť tento adresár. Dozvieme sa o rôznych ukážkach kódu, aby sme o tom hovorili v tejto príručke.
Príklad 1:
Poďme k prvému príkladu tejto príručky, aby sme demonštrovali použitie funkcie GetCurrentDirectory() v C#. Direktívy „using“ umožňujú programu pristupovať k triedam a metódam z menných priestorov „System“ a „System.IO“. Priestor názvov „System“ poskytuje základné typy a základné funkcie systému, zatiaľ čo „System.IO“ poskytuje triedy na použitie s dokumentmi a adresármi.
Ďalší riadok definuje novú triedu s názvom „Dummy“ prostredníctvom kľúčového slova „class“. Názov „Dummy“ je ľubovoľný a možno ho zmeniť na akýkoľvek platný identifikátor. Funkcia main() začína statickým kľúčovým slovom, ktoré označuje, že ide o metódu na úrovni triedy a na jej fungovanie nie je potrebné vyvolávať inštanciu triedy.
Čoskoro sa uskutoční volanie funkcie adresára. Metódu GetCurrentDirectory() možno použiť na získanie aktuálneho pracovného adresára aplikácie. Funkcia GetCurrentDirectory() je statická funkcia z triedy „Directory“, ktorá je súčasťou menného priestoru „System.IO“. Vráti reťazec, ktorý predstavuje aktuálny adresár a priradí ho k premennej „cd“.
Metóda Console.WriteLine() sa používa na zobrazenie riadka textu na štandardnom výstupe (konzole). V tomto prípade vypíše správu „Môj aktuálny adresár:“, ktorá je spojená s hodnotou premennej „cd“, ktorá obsahuje aktuálnu cestu k adresáru.
pomocou systému ;
pomocou systému. IO ;
trieda Dummy {
statické neplatné Hlavná ( ) {
reťazec cd = Adresár. GetCurrentDirectory ( ) ;
Konzola. WriteLine ( 'Môj aktuálny adresár: ' + cd ) ;
}
}
Keď spustíte tento program v jazyku C#, vykoná sa metóda „Main“ a na konzole sa zobrazí aktuálny adresár. V prípade, že používate akýkoľvek online kompilátor C#, zobrazí cestu kompilátora, t. j. /home/compiler.
Môže sa líšiť v závislosti od spôsobu spustenia aplikácie (napr. z Visual Studia, príkazového riadka alebo iného IDE).
Príklad 2:
Na získanie aktuálneho pracovného adresára možno okrem triedy „Adresár“ použiť aj prostredie C#. Vysvetlime si uvedený príklad kódu C# krok za krokom. Kód začína reťazcom „používanie systému;“ ktorý obsahuje menný priestor „System“ v programe. Kód definuje novú triedu s názvom „Test“.
Premenná typu reťazec s názvom „dir“ je deklarovaná a vo funkcii „Main“ je jej pridelená hodnota. Ak chcete získať aktuálny aktívny adresár aplikácie, použite atribút Environment.CurrentDirectory. Trieda “Environment” poskytuje informácie o prostredí, v ktorom aplikácia beží, vrátane informácií o súborovom systéme a systémových premenných prostredia.
Metóda “Console.WriteLine” sa používa na zobrazenie aktuálneho adresára na konzole IDE, ktoré používate. Operátor „+“ sa používa na zreťazenie reťazca „Aktuálny adresár:“ s hodnotou, ktorá je uložená v premennej „dir“.
pomocou systému ;trieda Test {
statické neplatné Hlavná ( ) {
struna riad = Životné prostredie. CurrentDirectory ;
Konzola. WriteLine ( 'Aktuálny adresár: ' + vy ) ;
}
}
Metóda „Main“ sa štandardne vyvolá pri spustení aplikácie. Začína sa získaním aktuálneho adresára pomocou Environment.CurrentDirectory. Potom zobrazí aktuálny adresár vytlačením správy „Current Directory:“ nasledovanou cestou adresára ku konzole pomocou vlastnosti Environment.CurrentDirectory.
Príklad 3:
Získanie aktuálneho adresára aplikácie je jednoduché pomocou atribútu AppDomain.CurrentDomain.BaseDirectory. Pridávame ďalší príklad kódu C# na demonštráciu použitia AppDomain.CurrentDomain.BaseDirectory.
Po pridaní menného priestoru „System“ kód definuje triedu s názvom „Test“. Metóda „Main“ spustí svoju realizáciu pridaním riadku na získanie aktuálneho pracovného adresára aplikácie. Trieda „AppDomain“ predstavuje doménu aplikácie a „CurrentDomain“ je statická vlastnosť, ktorá vracia aktuálnu doménu aplikácie.
Vlastnosť „BaseDirectory“ zase poskytuje základný adresár (známy aj ako koreňový adresár aplikácie) aktuálnej aplikačnej domény. Ďalší riadok deklaruje premennú s názvom „dir“ typu string na uloženie aktuálneho adresára. Nasledujúci po sebe idúci riadok vypíše aktuálny adresár do konzoly pomocou metódy Console.WriteLine. Operátor „+“ sa používa na zreťazenie reťazca „Aktuálny adresár:“ s hodnotou premennej „dir“.
pomocou systému ;trieda Test {
statické neplatné Hlavná ( ) {
struna riad = AppDomain. Aktuálna doména . BaseDirectory ;
Konzola. WriteLine ( 'Aktuálny adresár: ' + vy ) ;
}
}
Keď spustíte tento program v jazyku C#, zobrazí sa aktuálny adresár aplikácie na konzole.
Príklad 4:
Je čas na našu poslednú ilustráciu z tohto sprievodcu. Poskytnutý kód C# je jednoduchá konzolová aplikácia, ktorá demonštruje získanie aktuálneho adresára pomocou metód „Path.GetDirectoryName()“ a „Assembly.GetExecutingAssembly().Location“.
V tomto kóde sú importované tri menné priestory: „System“, „System.IO“ a „System.Reflection“. Tieto menné priestory obsahujú triedy a metódy, ktoré sú potrebné pre rôzne operácie v kóde. V kóde je definovaná „hlavná“ metóda a trieda s názvom „Test“. Ak chcete získať aktuálny pracovný adresár, metóda „Assembly.GetExecutingAssembly()“ vráti objekt „Assembly“, ktorý predstavuje aktuálne spustené zostavenie (t. j. spustiteľný súbor).
Vlastnosť „Location“ objektu „Assembly“ poskytuje úplnú cestu k umiestneniu spusteného spustiteľného súboru (vrátane názvu súboru). Teraz môže vlastnosť „Umiestnenie“ obsahovať úplnú cestu k spustiteľnému súboru vrátane názvu súboru. Na extrahovanie iba časti adresára sa používa „Path.GetDirectoryName()“. Cesta k adresáru, ktorý obsahuje súbor, je vrátená touto funkciou po prijatí adresy súboru ako vstupu.
Nakoniec kód vytlačí získaný aktuálny adresár do konzoly pomocou „Console.WriteLine()“. Operátor „+“ sa používa na zreťazenie reťazca „Aktuálny adresár:“ s hodnotou premennej „cd“ (ktorá obsahuje aktuálnu cestu k adresáru).
pomocou systému ;pomocou systému. IO ;
pomocou systému. Reflexia ;
trieda Test {
statické neplatné Hlavná ( ) {
reťazec cd = Cesta. GetDirectoryName ( Zhromaždenie. GetExecutingAssembly ( ) . Poloha ) ;
Konzola. WriteLine ( 'Aktuálny adresár: ' + cd ) ;
}
}
Keď spustíte tento program C#, zobrazí sa aktuálny adresár spusteného spustiteľného súboru na konzole podľa výstupu, ktorý je zobrazený na obrázku:
Záver
Vyššie uvedené inštancie získajú aktuálny súborový systém aplikácie pomocou rôznych metód a atribútov C#. Majte na pamäti, že aktuálna cesta sa môže meniť v závislosti od bežiaceho prostredia a spôsobu spustenia programu.