6237 Programmering II (Csharp) Agenda/Streams
From Teknologisk videncenter
Læsning af filer
Når man skal læse og skrive tekstfiler i C# foregår det ved hjælp af Streams.
For at kunne anvende streams skal man først have tilføjet System.IO i using.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
Hvis man skal læse en tekstfil foregår det med StreamReader.
Her åbnes filen "logfile.txt" i StreamReaderen inFil.
Derefter læses filen linie for line indtil filen ikke er længere (EndOfStream)
(Bemærk at programmet ikke laver noget ved de data som læses)
class Program
{
static void Main(string[] args)
{
StreamReader inFile = new StreamReader("logfile.txt");
String line;
while (!inFile.EndOfStream)
{
line = inFile.ReadLine();
}
inFile.Close();
}
}
Hvis man vil skrive til en fil foregår det ved hjælp af StreamWriter.
Eksemplet herunder åbner filen logfile, læser linierne en af gangen.
Hvis linien indeholder ordet "DNS" skrives linien i outFile.
class Program
{
static void Main(string[] args)
{
StreamReader inFile = new StreamReader("logfile.txt");
StreamWriter outFile = new StreamWriter("output.txt");
String line;
while (!inFile.EndOfStream)
{
line = inFile.ReadLine();
if (line.Contains("DNS"))
{
outFile.WriteLine(line);
}
}
outFile.Close();
inFile.Close();
}
}