Få den aktuelle mappe i C#

Fa Den Aktuelle Mappe I C



Da mapper tilbyder en systematisk og organiseret tilgang til håndtering af ressourcer og dokumenter inde i en applikation, spiller de en væsentlig rolle i C#-udviklingen. Mapper hjælper med den logiske organisering af filer og ressourcer. Du kan hurtigt finde og administrere filerne ved at placere dem i en mappe med andre lignende elementer. I C# kan programmets aktuelle arbejdsmappe hentes ved hjælp af GetCurrentDirectory()-funktionen.

Arbejdsmappen refererer til den placering i filsystemet, hvor applikationen kører i øjeblikket. Da det fungerer som udgangspunktet for alle tilknyttede fil- og mappeaktiviteter, er denne mappe vigtig at forstå. Vi vil lære om de forskellige kodeeksempler for at tale om dette i denne vejledning.

Eksempel 1:

Lad os gå mod det første eksempel på denne guide for at demonstrere brugen af ​​GetCurrentDirectory()-funktionen i C#. 'Brug'-direktiverne tillader programmet at få adgang til klasserne og metoderne fra 'System' og 'System.IO' navneområderne. 'System'-navnerummet giver grundlæggende typer og grundlæggende systemfunktionalitet, mens 'System.IO' giver klasser til brug med dokumenter og mapper.







Den næste linje definerer en ny klasse med navnet 'Dummy' via nøgleordet 'class'. Navnet 'Dummy' er vilkårligt og kan ændres til en hvilken som helst gyldig identifikator. Main()-funktionen starter med det statiske nøgleord, som angiver, at det er en metode på klasseniveau, og det er ikke nødvendigt at kalde en klasseinstans for at det kan fungere.



Telefonbogsfunktionskaldet er ved at ske. GetCurrentDirectory()-metoden kan bruges til at få applikationens nuværende arbejdsmappe. GetCurrentDirectory()-funktionen er en statisk funktion fra 'Directory'-klassen, som er en del af 'System.IO'-navnerummet. Det returnerer en streng, der repræsenterer den aktuelle mappe og tildeler den til 'cd'-variablen.



Metoden Console.WriteLine() bruges til at vise en tekstlinje til standardoutputtet (konsollen). I dette tilfælde udskriver den 'My Current Directory:'-meddelelsen, der er sammenkædet med værdien af ​​'cd'-variablen, som indeholder den aktuelle mappesti.





ved hjælp af System ;

ved hjælp af System. IO ;

klasse Dummy {

statisk ugyldig Hoved ( ) {

streng cd = Vejviser. GetCurrentDirectory ( ) ;

Konsol. WriteLine ( 'Min nuværende mappe: ' + cd ) ;

}

}

Når du kører dette C#-program, udføres 'Main'-metoden, og den aktuelle mappe vises på konsollen. Hvis du bruger en online C#-compiler, viser den compilerstien, dvs. /home/compiler.



Det kan variere afhængigt af, hvordan du udfører applikationen (f.eks. fra Visual Studio, kommandoprompt eller en anden IDE).

Eksempel 2:

Ud over klassen 'Directory' kan miljøet i C# også bruges til at hente den aktuelle arbejdsmappe. Lad os forklare den givne C#-eksempelkode trin for trin. Koden begynder med 'bruger systemet;' sætning, som inkluderer 'System'-navnerummet i programmet. Koden definerer en ny klasse med navnet 'Test'.

En strengtypevariabel med 'dir'-navnet erklæres og får en værdi inde i 'Main'-funktionen. For at få applikationens nuværende aktive mappe skal du bruge attributten Environment.CurrentDirectory. Klassen 'Environment' giver information om det miljø, hvori applikationen kører, herunder oplysninger om filsystemet og systemmiljøvariabler.

'Console.WriteLine'-metoden bruges til at vise den aktuelle mappe på konsollen på den IDE, du har brugt. Operatoren '+' bruges til at sammenkæde 'Current Directory:'-strengen med den værdi, der er gemt i 'dir'-variablen.

ved hjælp af System ;

klasse Test {

statisk ugyldig Hoved ( ) {

streng dir = Miljø. CurrentDirectory ;

Konsol. WriteLine ( 'Nuværende mappe: ' + du ) ;

}

}

'Hoved'-metoden påkaldes som standard, når applikationen køres. Det starter med at hente den aktuelle mappe ved hjælp af Environment.CurrentDirectory. Derefter viser den den aktuelle mappe ved at udskrive meddelelsen 'Current Directory:' efterfulgt af biblioteksstien til konsollen ved hjælp af egenskaben Environment.CurrentDirectory.

Eksempel 3:

Det er nemt at få applikationens aktuelle mappe med attributten AppDomain.CurrentDomain.BaseDirectory. Vi tilføjer endnu et C#-kodeeksempel for at demonstrere brugen af ​​AppDomain.CurrentDomain.BaseDirectory.

Efter tilføjelse af 'System'-navnerummet definerer koden en klasse kaldet 'Test'. 'Hoved'-metoden starter sin udførelse ved at tilføje en linje for at hente den aktuelle arbejdsmappe for applikationen. Klassen 'AppDomain' repræsenterer et applikationsdomæne, og 'CurrentDomain' er en statisk egenskab, der returnerer det aktuelle applikationsdomæne.

Egenskaben 'BaseDirectory' giver til gengæld basismappen (også kendt som applikationens rodmappe) for det aktuelle applikationsdomæne. Den næste linje erklærer en variabel ved navn 'dir' af typen streng for at gemme den aktuelle mappe. Den næste på hinanden følgende linje udsender den aktuelle mappe til konsollen ved hjælp af Console.WriteLine-metoden. Operatoren '+' bruges til at sammenkæde 'Current Directory:'-strengen med værdien af ​​'dir'-variablen.

ved hjælp af System ;

klasse Test {

statisk ugyldig Hoved ( ) {

streng dir = AppDomæne. Nuværende domæne . BaseDirectory ;

Konsol. WriteLine ( 'Nuværende mappe: ' + du ) ;

}

}

Når du kører dette C#-program, viser det den aktuelle mappe for applikationen på konsollen.

Eksempel 4:

Det er tid til vores sidste illustration fra denne guide. Den medfølgende C#-kode er en simpel konsolapplikation, der demonstrerer at hente den aktuelle mappe ved hjælp af metoderne 'Path.GetDirectoryName()' og 'Assembly.GetExecutingAssembly().Location'.

I denne kode importeres tre navnerum: 'System', 'System.IO' og 'System.Reflection'. Disse navnerum indeholder klasser og metoder, der kræves til forskellige operationer i koden. En 'Main' metode og en klasse kaldet 'Test' er defineret i koden. For at få den aktuelle arbejdsmappe returnerer 'Assembly.GetExecutingAssembly()'-metoden et 'Assembly'-objekt, der repræsenterer den aktuelt eksekverende assembly (dvs. den kørende eksekverbare).

Egenskaben 'Location' for objektet 'Assembly' giver den fulde sti til placeringen af ​​den kørende eksekverbare (inklusive filnavnet). Nu kan 'Location'-egenskaben indeholde den fulde sti til den eksekverbare, inklusive filnavnet. For kun at udtrække mappedelen, bruges 'Path.GetDirectoryName()'. Biblioteksstien, der indeholder filen, returneres af denne funktion efter accept af en filadresse som input.

Til sidst udskriver koden den opnåede aktuelle mappe til konsollen ved hjælp af 'Console.WriteLine()'. '+'-operatoren bruges til at sammenkæde 'Current Directory:'-strengen med værdien af ​​'cd'-variablen (som indeholder den aktuelle mappesti).

ved hjælp af System ;

ved hjælp af System. IO ;

ved hjælp af System. Afspejling ;

klasse Test {

statisk ugyldig Hoved ( ) {

streng cd = Sti. GetDirectoryName ( Montage. GetExecutingAssembly ( ) . Beliggenhed ) ;

Konsol. WriteLine ( 'Nuværende mappe: ' + cd ) ;

}

}

Når du kører dette C#-program, viser det den aktuelle mappe for den kørende eksekverbare på konsollen i henhold til outputtet, der er vist på billedet:

Konklusion

De førnævnte tilfælde henter applikationens nuværende filsystem ved hjælp af forskellige C#-metoder og attributter. Husk, at den aktuelle sti kan ændre sig afhængigt af køremiljøet og hvordan programmet startes.