Untitled

mail@pastecode.io avatar
unknown
plain_text
4 months ago
8.7 kB
2
Indexable
/*using System;
using System.IO;

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

    {
        while (true)
        {
            Console.WriteLine("Optionen:");
            Console.WriteLine("1. Verschlüsseln");
            Console.WriteLine("2. Entschlüsseln");
            Console.WriteLine("3. Beenden");
            string choice = Console.ReadLine();

            switch (choice)
            {
                case "1":
                    EFile();
                    break;
                case "2":
                    DFile();
                    break;
                case "3":
                    return;
                default:
                    Console.WriteLine("");
                    break;
            }
        }
    }

    static void EFile()
    {
        try
        {
            using (StreamReader reader = new StreamReader("C:\\Users\\abmoradi\\source\\repos\\App\\App\\text.txt"))
            using (StreamWriter writer1 = new StreamWriter("C:\\Users\\abmoradi\\source\\repos\\App\\App\\teil1.txt"))
            using (StreamWriter writer2 = new StreamWriter("C:\\Users\\abmoradi\\source\\repos\\App\\App\\teil2.txt"))
            {
                bool smt = true;
                while (!reader.EndOfStream)
                {
                    int charValue = reader.Read();
                    if (smt)
                    {
                        writer1.Write((char)charValue);
                        Console.Write((char)charValue);
                        
                    }
                    else
                    {
                        writer2.Write((char)charValue);
                        Console.Write((char)charValue);
                    }
                    smt = !smt;
                }
            } 
        }
        catch (Exception e)
        {
            Console.WriteLine("Fehler Verschlüsselung: " + e.Message);
        }
    }

    static void DFile()
    {
        try
        {
            using (StreamReader reader1 = new StreamReader("C:\\Users\\abmoradi\\source\\repos\\App\\App\\teil1.txt"))
            using (StreamReader reader2 = new StreamReader("C:\\Users\\abmoradi\\source\\repos\\App\\App\\teil2.txt"))
            using (StreamWriter writer = new StreamWriter("C:\\Users\\abmoradi\\source\\repos\\App\\App\\Klartext.txt"))
            {
                bool smt= true;
                while (!reader1.EndOfStream || !reader2.EndOfStream)
                {
                    if (smt && !reader1.EndOfStream)
                    {
                        writer.Write((char)reader1.Read());
                    }
                    else if (!smt && !reader2.EndOfStream)
                    {
                        writer.Write((char)reader2.Read());
                    }
                    smt = !smt;
                }
            }
        }
        catch (Exception e)
        {
            Console.WriteLine("Fehler Entschlüsselung: " + e.Message);
        }
    }
}*/

using System;
using System.Collections.Generic;
using System.IO;

class Adresse
{
    public string Nachname { get; set; }
    public string Vorname { get; set; }
    public string Strasse { get; set; }
    public string Plz { get; set; }
    public string Ort { get; set; }

    public Adresse(string nachname, string vorname, string strasse, string plz, string ort)
    {
        Nachname = nachname;
        Vorname = vorname;
        Strasse = strasse;
        Plz = plz;
        Ort = ort;
    }

    public override string ToString()
    {
        return $"{Nachname};{Vorname};{Strasse};{Plz};{Ort}";
    }

    public static Adresse FromString(string csvLine)
    {
        var parts = csvLine.Split(';');
        if (parts.Length >= 5)
        {
            return new Adresse(parts[0], parts[1], parts[2], parts[3], parts[4]);
        }
        return null;
    }
}

class Adressverwaltung
{
    private List<Adresse> adressen = new List<Adresse>();
    private const string Dateiname = "C:\\Users\\abmoradi\\source\\repos\\App\\App\\Adressen.txt";

    public Adressverwaltung()
    {
        LadeAdressen();
    }

    public void NeueAdresse()
    {
        Console.Write("Nachname: ");
        string nachname = Console.ReadLine();
        Console.Write("Vorname: ");
        string vorname = Console.ReadLine();
        Console.Write("Strasse: ");
        string strasse = Console.ReadLine();
        Console.Write("PLZ: ");
        string plz = Console.ReadLine();
        Console.Write("Ort: ");
        string ort = Console.ReadLine();

        Adresse adresse = new Adresse(nachname, vorname, strasse, plz, ort);
        adressen.Add(adresse);
    }

    public void AdressenAnsehen()
    {
        for (int i = 0; i < adressen.Count; i++)
        {
            Console.WriteLine($"<{i + 1}> {adressen[i]}");
        }
    }

    public void AdresseAendern()
    {
        AdressenAnsehen();
        Console.Write("welche Adresse ändern? (Nummer eingeben): ");
        if (int.TryParse(Console.ReadLine(), out int index) && index > 0 && index <= adressen.Count)
        {
            Adresse adresse = adressen[index - 1];
            Console.WriteLine("Bitte neue Daten eingeben: ");

            Console.Write($"Nachname ({adresse.Nachname}): ");
            string nachname = Console.ReadLine();
            if (!string.IsNullOrWhiteSpace(nachname)) adresse.Nachname = nachname;

            Console.Write($"Vorname ({adresse.Vorname}): ");
            string vorname = Console.ReadLine();
            if (!string.IsNullOrWhiteSpace(vorname)) adresse.Vorname = vorname;

            Console.Write($"Strasse ({adresse.Strasse}): ");
            string strasse = Console.ReadLine();
            if (!string.IsNullOrWhiteSpace(strasse)) adresse.Strasse = strasse;

            Console.Write($"PLZ ({adresse.Plz}): ");
            string plz = Console.ReadLine();
            if (!string.IsNullOrWhiteSpace(plz)) adresse.Plz = plz;

            Console.Write($"Ort ({adresse.Ort}): ");
            string ort = Console.ReadLine();
            if (!string.IsNullOrWhiteSpace(ort)) adresse.Ort = ort;
        }
        else
        {
            Console.WriteLine("Ungültige Nummer!");
        }
    }

    public void Beenden()
    {
        SpeichereAdressen();
        Console.WriteLine("Programm wird beendet");
    }

    private void LadeAdressen()
    {
        if (File.Exists(Dateiname))
        {
            string[] lines = File.ReadAllLines(Dateiname);
            foreach (string line in lines)
            {
                Adresse adresse = Adresse.FromString(line);
                if (adresse != null)
                {
                    adressen.Add(adresse);
                }
            }
        }
        else
        {
            Console.WriteLine("Keine Datei.");
        }
    }

    private void SpeichereAdressen()
    {
        List<string> lines = new List<string>();
        foreach (var adresse in adressen)
        {
            lines.Add(adresse.ToString());
        }
        File.WriteAllLines(Dateiname, lines);
    }


    public void Hauptmenu()
    {
        int wahl = 0;
        while (wahl != 4)
        {
            Console.WriteLine("Adressverwaltung");
            Console.WriteLine("Optionen:");
            Console.WriteLine("1 Neue Adresse anlegen");
            Console.WriteLine("2 Adressen ansehen");
            Console.WriteLine("3 Adresse ändern");
            Console.WriteLine("4 Beenden");
            if (int.TryParse(Console.ReadLine(), out wahl))
            {
                switch (wahl)
                {
                    case 1:
                        NeueAdresse();
                        break;
                    case 2:
                        AdressenAnsehen();
                        break;
                    case 3:
                        AdresseAendern();
                        break;
                    case 4:
                        Beenden();
                        break;
                    default:
                        Console.WriteLine("Ungültig");
                        break;
                }
            }
            else
            {
                Console.WriteLine("eine Zahl eingeben.");
            }
        }
    }
}

class Program
{
    static void Main(string[] args)
    {
        Adressverwaltung verwaltung = new Adressverwaltung();
        verwaltung.Hauptmenu();
    }
}
Leave a Comment