C # heeft een breed scala aan bestandsbewerkingen. Deze bewerkingen omvatten het openen van een bestand, het lezen van of schrijven naar een bestand. Er kunnen gevallen zijn waarin u rechtstreeks met bestanden wilt werken, in welk geval u de bestandsbewerkingen zou gebruiken die beschikbaar zijn in C #. Enkele van de basisbewerkingen voor bestanden worden hieronder vermeld.
- Lezen - Deze bewerking is de standaard leesbewerking waarbij gegevens uit een bestand worden gelezen.
- Schrijven - Deze bewerking is de standaard schrijfbewerking waarbij gegevens naar een bestand worden geschreven. Standaard wordt alle bestaande inhoud uit het bestand verwijderd en wordt nieuwe inhoud geschreven.
- Toevoegen - Deze bewerking omvat ook het schrijven van informatie naar een bestand. Het enige verschil is dat de bestaande gegevens in een bestand niet worden overschreven. De nieuwe gegevens die moeten worden geschreven, worden aan het einde van het bestand toegevoegd.
In deze tutorial leer je-
- Bestand bestaat
- File.ReadAlllines
- File.ReadAllText
- Bestand Kopiëren
- Bestand.Verwijderen
Basis I / O-opdrachten
C # en .Net kunnen met bestanden werken met behulp van verschillende File I / O-opdrachten. Laten we eens kijken naar enkele van deze commando's. Voor ons voorbeeld gaan we ervan uit dat we een bestand in de D-schijf hebben met de naam Voorbeeld.txt.
Het bestand is een eenvoudig tekstbestand en heeft 2 regels, zoals hieronder weergegeven
- Guru99 - .Net
- Guru99 -C #
Voor ons voorbeeld zullen we een eenvoudige consoletoepassing maken en werken met onze File I / O-opdrachten. De consoletoepassing is de basisapplicatie die in de eerdere zelfstudie is gemaakt. In de consoletoepassing wordt alle code naar het bestand Program.cs geschreven.
Bestand bestaat
De methode Bestand bestaat wordt gebruikt om te controleren of een bepaald bestand bestaat. Laten we nu eens kijken naar de code die kan worden gebruikt om te controleren of ons Example.txt-bestand bestaat of niet. Voer de onderstaande code in het bestand program.cs in.
using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Tutorial{static void Main(string[] args){String path = @"D:\Example.txt";if (File.Exists(path)){Console.WriteLine("File Exists");}Console.ReadKey();}}}
Code Verklaring: -
- Eerst stellen we een stringvariabele in met het pad naar ons Example.txt-bestand.
- Vervolgens gebruiken we de File.Exists-methode om te controleren of het bestand bestaat of niet. Als het bestand bestaat, wordt een echte waarde geretourneerd.
- Als we een echte waarde krijgen en het bestand bestaat, dan schrijven we het bericht "File Exists" naar de console.
Wanneer de bovenstaande code is ingesteld en het project wordt uitgevoerd met Visual Studio, krijgt u de onderstaande uitvoer.
Uitgang: -
Uit de bovenstaande uitvoer kun je zien dat de opdracht File.Exists met succes is uitgevoerd en dat het juiste bericht in het consolevenster is weergegeven.
File.ReadAlllines
De methode wordt gebruikt om alle regels één voor één in een bestand te lezen. De regels worden vervolgens opgeslagen in een string-array-variabele. Laten we naar een voorbeeld kijken. Voer de onderstaande code in het bestand program.cs in.
using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Tutorial{static void Main(string[] args){String path = @"D:\Example.txt";String[] lines;lines = File.ReadAllLines(path);Console.WriteLine(lines[0]);Console.WriteLine(lines[1]);Console.ReadKey();}}}
Code Verklaring: -
- Ten eerste declareren we een string-array-variabele. Dit wordt gebruikt om het resultaat op te slaan dat wordt geretourneerd door de methode File.ReadAllLines.
- Vervolgens gebruiken we de File.ReadAllLines-methode om alle regels uit ons tekstbestand te lezen. Het resultaat wordt vervolgens doorgegeven aan de variabele regels.
- Omdat we weten dat ons bestand slechts 2 regels bevat, hebben we toegang tot de waarde van de arrayvariabelen via het commando lines [0] en lines [1].
Wanneer de bovenstaande code is ingesteld en het project wordt uitgevoerd met Visual Studio, krijgt u de onderstaande uitvoer.
Uitgang: -
Uit de uitvoer kun je zien dat de opdracht File.ReadAllLines beide regels uit ons bestand Example.txt heeft geretourneerd
File.ReadAllText
Deze methode wordt gebruikt om alle regels in een bestand in één keer te lezen. De regels worden vervolgens opgeslagen in een stringvariabele. Laten we naar een voorbeeld kijken. Voer de onderstaande code in het bestand program.cs in.
using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Tutorial{static void Main(string[] args){String path = @"D:\Example.txt";String lines;lines = File.ReadAllText(path);Console.WriteLine(lines);Console.ReadKey();}}}
Code Verklaring: -
- Ten eerste declareren we een stringvariabele genaamd Lines. Dit wordt gebruikt om het resultaat op te slaan dat wordt geretourneerd door de methode File.ReadAllText.
- Vervolgens gebruiken we de File.ReadAllText-methode om alle regels uit ons tekstbestand te lezen. Het resultaat wordt vervolgens doorgegeven aan de variabele regels.
- We kunnen de Console.Writeline-methode direct gebruiken om de waarde van de Lines-variabele weer te geven.
Wanneer de bovenstaande code is ingesteld en het project wordt uitgevoerd met Visual Studio, krijgt u de onderstaande uitvoer.
Uitgang: -
Aan de uitvoer kun je zien dat de opdracht File.ReadAlltext beide regels uit ons bestand Example.txt heeft geretourneerd
Bestand Kopiëren
De methode wordt gebruikt om een kopie te maken van een bestaand bestand. Laten we naar een voorbeeld kijken. Voer de onderstaande code in het bestand program.cs in.
using System;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Tutorial{static void Main(string[] args){String path = @"D:\Example.txt";String copypath = @"D:\ExampleNew.txt";File.Copy(path,copypath);Console.ReadKey();}}}
Code Verklaring: -
- Ten eerste declareren we een stringvariabele genaamd path. Dit wordt de locatie van ons Example.txt-bestand. Dit bestand zal het bronbestand zijn dat wordt gebruikt voor de kopieerbewerking.
- Vervolgens declareren we een stringvariabele genaamd copypath. Dit is de locatie van een nieuw bestand met de naam VoorbeeldNieuw.txt-bestand. Dit is het doelbestand waarin de inhoud wordt geschreven vanuit het bronbestand Example.txt.
- We roepen vervolgens de File.Copy-methode aan om het bestand Example.txt naar het bestand ExampleNew.txt te kopiëren.
Als de bovenstaande code is ingesteld en het project wordt uitgevoerd met Visual Studio, wordt het bestand Example.txt gekopieerd naar ExampleNew.txt.
Bestand.Verwijderen
De methode wordt gebruikt om een bestaand bestand te verwijderen. Laten we naar een voorbeeld kijken. Voer de onderstaande code in het bestand program.cs in.
using System;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Tutorial{static void Main(string[] args){String path = @"D:\Example.txt";File.Delete(path);Console.ReadKey();}}}
Code Verklaring: -
- Ten eerste declareren we een stringvariabele genaamd path. Dit wordt de locatie van ons Example.txt-bestand. Dit is het bestand dat wordt verwijderd.
- Vervolgens roepen we de File.Delete-methode aan om het bestand te verwijderen.
Als de bovenstaande code is ingesteld en het project wordt uitgevoerd met Visual Studio, wordt het bestand Example.txt verwijderd van de D-schijf.
Overzicht
- C # heeft een aantal bestandsbewerkingen die op bestanden kunnen worden uitgevoerd. De meeste van deze bewerkingen maken deel uit van de klasse File.
- Als u gegevens uit een bestand wilt lezen, kunt u de methoden File.ReadAlltext of File.ReadAllLines gebruiken.
Bestandsmethode | Omschrijving |
---|---|
Bestand bestaat | De methode Bestand bestaat wordt gebruikt om te controleren of een bepaald bestand bestaat. |
File.ReadAlllines | De methode wordt gebruikt om alle regels één voor één in een bestand te lezen. |
File.ReadAllText | Deze methode wordt gebruikt om alle regels in een bestand in één keer te lezen. |
Bestand Kopiëren | De methode wordt gebruikt om een kopie te maken van een bestaand bestand. |
Bestand.Verwijderen | De methode wordt gebruikt om een bestaand bestand te verwijderen. |