Gå til indholdet

N270 IO (File/Directory)

Du skal skabe en konsol app hvor du skal benytte System.IO.File og System.IO.Directory til at:

  • Udskrive en boolsk værdi svarende til om mappen c:\temp eksisterer (hvis den ikke findes så opret den og placer et par filer i)
  • Udskrive navnet på samtlige filer i mappen
  • Udskrive en boolsk værdi svarende til om filen c:\temp\data.txt eksisterer
  • (Over)skrive indholdet i c:\temp\data.txt med “xxx” (brug WriteAllText)
  • Tilføje “yyy” til filen (brug AppendAllText)
  • Hent indhold til en string variabel og skriv den ud (brug ReadAllText)
  • Slet filen

Husk fejlhåndtering - og gerne således at fejl fra IO fanges og behandles separat (System.IO.IOException).

Klik for at se et forslag til en løsning
using System;

namespace IOApp
{
    class Program
    {
        static void Main(string[] args)
        {

            try
            {
                Console.WriteLine($"Eksisterer c:\\temp: {System.IO.Directory.Exists(@"c:\temp")}");
                foreach (var item in System.IO.Directory.GetFiles(@"c:\temp"))
                    Console.WriteLine(item);

                Console.WriteLine($"Eksisterer c:\\temp\\data.txt: {System.IO.File.Exists(@"c:\temp\data.txt")}");

                // Opret fil
                System.IO.File.WriteAllText(@"c:\temp\data.txt", "xxx");
                // Append
                System.IO.File.AppendAllText(@"c:\temp\data.txt", "yyy");
                // Hent
                string indhold = System.IO.File.ReadAllText(@"c:\temp\data.txt");
                Console.WriteLine(indhold);

                // Slet
                if (System.IO.File.Exists(@"c:\temp\data.txt"))
                    System.IO.File.Delete(@"c:\temp\data.txt");

            }
            catch (System.IO.IOException ex)
            {
                Console.WriteLine(ex.Message);                
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
    }
}