C # har ett brett utbud av filåtgärder. Dessa åtgärder inkluderar att öppna en fil, läsa eller skriva till en fil. Det kan finnas tillfällen där du vill arbeta med filer direkt, i vilket fall du skulle använda de filåtgärder som finns tillgängliga i C #. Några av de grundläggande filåtgärderna nämns nedan.
- Läsning - Denna operation är den grundläggande läsoperationen där data läses från en fil.
- Skrivning - Denna operation är den grundläggande skrivoperationen där data skrivs till en fil. Som standard tas allt befintligt innehåll bort från filen och nytt innehåll skrivs.
- Appending - Den här åtgärden innebär också att man skriver information till en fil. Den enda skillnaden är att de befintliga uppgifterna i en fil inte skrivs över. De nya uppgifterna som ska skrivas läggs till i slutet av filen.
I den här handledningen lär du dig-
- Fil existerar
- File.ReadAlllines
- File.ReadAllText
- File.Copy
- File.Rader
Grundläggande I / O-kommandon
C # och .Net kan arbeta med filer med hjälp av flera File I / O-kommandon. Låt oss ta en titt på några av dessa kommandon. För vårt exempel antar vi att vi har en fil i D-enheten som heter Example.txt.
Filen blir en enkel textfil och har två rader som visas nedan
- Guru99 - .Net
- Guru99 -C #
För vårt exempel skapar vi en enkel konsolapplikation och arbetar med våra File I / O-kommandon. Konsolapplikationen är den grundläggande som skapades i den tidigare självstudien. I konsolapplikationen skrivs all kod till Program.cs-filen.
Fil existerar
Metoden File existent används för att kontrollera om en viss fil finns. Så nu ska vi se koden som kan användas för att kontrollera om vår exempel.txt-fil finns eller inte. Ange koden nedan i programmet.cs-filen.
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();}}}
Kodförklaring: -
- Först ställer vi in en strängvariabel med sökvägen till vår exempel.txt-fil.
- Därefter använder vi File.Exists-metoden för att kontrollera om filen finns eller inte. Om filen finns kommer ett sant värde att returneras.
- Om vi får ett verkligt värde och filen finns, skriver vi meddelandet "File Exists" till konsolen.
När koden ovan är inställd och projektet körs med Visual Studio får du utdata nedan.
Produktion:-
Från ovanstående utdata kan du se att File.Exists-kommandot kördes framgångsrikt och att rätt meddelande visas i konsolfönstret.
File.ReadAlllines
Metoden används för att läsa alla raderna en efter en i en fil. Raderna lagras sedan i en strängmatrisvariabel. Låt oss titta på ett exempel. Ange koden nedan i programmet.cs-filen.
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();}}}
Kodförklaring: -
- Först deklarerar vi en strängmatrisvariabel. Detta kommer att användas för att lagra resultatet som returneras med File.ReadAllLines-metoden.
- Därefter använder vi File.ReadAllLines-metoden för att läsa alla rader från vår textfil. Resultatet skickas sedan till radvariabeln.
- Eftersom vi vet att vår fil endast innehåller två rader, kan vi komma åt värdet av arrayvariablerna via kommandot rader [0] och rader [1].
När ovanstående kod är inställd och projektet körs med Visual Studio får du utdata nedan.
Produktion:-
Från utdata kan du se att kommandot File.ReadAllLines returnerade båda raderna från vår fil Exempel.txt
File.ReadAllText
Denna metod används för att läsa alla rader i en fil på en gång. Linjerna lagras sedan i en strängvariabel. Låt oss titta på ett exempel. Ange koden nedan i programmet.cs-filen.
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();}}}
Kodförklaring: -
- Först förklarar vi en strängvariabel som heter Lines. Detta kommer att användas för att lagra resultatet som returneras med File.ReadAllText-metoden.
- Därefter använder vi metoden File.ReadAllText för att läsa alla rader från vår textfil. Resultatet skickas sedan till radvariabeln.
- Vi kan använda Console.Writeline-metoden direkt för att visa värdet på variabeln Linjer.
När ovanstående kod är inställd och projektet körs med Visual Studio får du utdata nedan.
Produktion:-
Från utdata kan du se att kommandot File.ReadAlltext returnerade båda raderna från vår fil Exempel.txt
File.Copy
Metoden används för att göra en kopia av en befintlig fil. Låt oss titta på ett exempel. Ange koden nedan i programmet.cs-filen.
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();}}}
Kodförklaring: -
- Först förklarar vi en strängvariabel som heter path. Det här är platsen för vår exempel.txt-fil. Den här filen är källfilen som används för kopieringen.
- Därefter deklarerar vi en strängvariabel som heter copypath. Detta kommer att vara platsen för en ny fil med namnet ExampleNew.txt-fil. Detta kommer att vara målfilen där innehållet kommer att skrivas från källfilen Exempel.txt.
- Vi kallar sedan metoden File.Copy för att kopiera filen Example.txt-filen till filen ExampleNew.txt.
När ovanstående kod är inställd och projektet körs med Visual Studio kopieras filen Exempel.txt till ExempelNy.txt.
File.Rader
Metoden används för att radera en befintlig fil. Låt oss titta på ett exempel. Ange koden nedan i programmet.cs-filen.
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();}}}
Kodförklaring: -
- Först förklarar vi en strängvariabel som heter path. Det här är platsen för vår exempel.txt-fil. Det här är filen som kommer att raderas.
- Därefter ringer vi metoden File.Delete för att radera filen.
När ovanstående kod är inställd och projektet körs med Visual Studio kommer filen Exempel.txt att raderas från D-enheten.
Sammanfattning
- C # har ett antal filåtgärder som kan utföras på filer. De flesta av dessa operationer ingår i klassen File.
- Om du vill läsa data från en fil kan du använda metoderna File.ReadAlltext eller File.ReadAllLines.
Filmetod | Beskrivning |
---|---|
Fil existerar | Metoden File exist används för att kontrollera om en viss fil finns. |
File.ReadAlllines | Metoden används för att läsa alla raderna en efter en i en fil. |
File.ReadAllText | Denna metod används för att läsa alla rader i en fil på en gång. |
File.Copy | Metoden används för att göra en kopia av en befintlig fil. |
File.Rader | Metoden används för att radera en befintlig fil. |