From a39c9754e663fd50f39534532679526629df148e Mon Sep 17 00:00:00 2001 From: sebi Date: Wed, 26 Jun 2024 15:23:59 +0200 Subject: [PATCH] Dateiformat, Serialisierung --- E36_Dateiformate/Exercise_1.cs | 41 ++++++++++++++++++++++++++++++++ E36_Dateiformate/Exercise_2.cs | 40 +++++++++++++++++++++++++++++++ E37_Serialisierung/Exercise_1.cs | 22 +++++++++++++++-- E37_Serialisierung/Exercise_2.cs | 16 ------------- Program.cs | 8 +++---- 5 files changed, 105 insertions(+), 22 deletions(-) create mode 100644 E36_Dateiformate/Exercise_1.cs create mode 100644 E36_Dateiformate/Exercise_2.cs delete mode 100644 E37_Serialisierung/Exercise_2.cs diff --git a/E36_Dateiformate/Exercise_1.cs b/E36_Dateiformate/Exercise_1.cs new file mode 100644 index 0000000..9e30301 --- /dev/null +++ b/E36_Dateiformate/Exercise_1.cs @@ -0,0 +1,41 @@ +using System; +using System.IO; +using System.Collections.Generic; + +namespace Exercises_C_Sharp.E36_Dateiforamte +{ + // Wandeln Sie die Liste von Büchern in einen XML und einen JSON String um. Lassen Sie die Strings auf der Konsole ausgeben und vergleichen die Länge der beiden Strings und geben Sie dieses Ergebnis auch auf der Konsole aus. + class Exercise_1 + { + public static void Start() + { + List LibroList; + LibroList = new(){ + new(){ Title = "Andersens Märchen", Author ="Hans Christian Andersen", Pages = 845}, + new(){ Title = "Stolz und Vorurteil", Author ="Jane Austen", Pages = 463}, + new(){ Title = "Vater Goriot", Author ="Honoré de Balzac", Pages = 732}, + new(){ Title = "Das Dekameron", Author ="Giovanni Boccaccio", Pages = 412}, + new(){ Title = "Sturmhöhe", Author ="Emily Brontë", Pages = 735}, + new(){ Title = "Der Fremde", Author ="Albert Camus", Pages = 528} + }; + + //Code START + + //Code ENDE + } + + //Code START + + //Code ENDE + + } + + //Code START + class Libro + { + public string? Title {get;set;} + public string? Author {get;set;} + public int Pages {get;set;} + } + //Code ENDE +} \ No newline at end of file diff --git a/E36_Dateiformate/Exercise_2.cs b/E36_Dateiformate/Exercise_2.cs new file mode 100644 index 0000000..8e073f7 --- /dev/null +++ b/E36_Dateiformate/Exercise_2.cs @@ -0,0 +1,40 @@ +using System; +using System.IO; +using System.Collections.Generic; + +namespace Exercises_C_Sharp.E36_Dateiforamte +{ + // Sie sollen ein lokales E-Mail-System entwickeln. Dabei sollen folgende Anforderungen sollen erfüllt werden: + // - Fragen Sie zuerst nach dem Usernamen des aktuellen Users + // - Der User soll eine E-Mail schreiben können. Als Sender und Empfänger dienen die Usernamen + // - Der User soll alle seine E-Mail angezeigt bekommen. + // - Der User soll auf eine E-Mail antworten können. Dabei muss die Mail, auf die geantwortet wird, als MailBefore gesetzt werden. + // - Der User soll sich ausloggen können. + // Speichern Sie dabei die Liste der E-Mails als XML in die Variable XmlData und als JSON in die Variable JsonData. + class Exercise_2 + { + static string XmlData = ""; + static string JsonData = ""; + public static void Start() + { + //Code START + + //Code ENDE + } + + //Code START + + //Code ENDE + } + + //Code START + class Mail + { + public string? Title {get;set;} + public string? Sender {get;set;} + public string? Receiver {get;set;} + public byte[]? Attach {get;set;} + public Mail? MailBefore {get;set;} + } + //Code ENDE +} \ No newline at end of file diff --git a/E37_Serialisierung/Exercise_1.cs b/E37_Serialisierung/Exercise_1.cs index 8b6bb1a..89f96c4 100644 --- a/E37_Serialisierung/Exercise_1.cs +++ b/E37_Serialisierung/Exercise_1.cs @@ -4,13 +4,31 @@ using System.Collections.Generic; namespace Exercises_C_Sharp.E37_Serialisierung { + // Die Klasse Libro kennen Sie aus einen der vorherigen Aufgaben. Speichern Sie diese Liste Serialisiert in ein Byte-Array in die Datei "save.bin". class Exercise_1 { public static void Start() { - //Code START + List LibroList = new(){ + new(){ Title = "Andersens Märchen", Author ="Hans Christian Andersen", Pages = 845}, + new(){ Title = "Stolz und Vorurteil", Author ="Jane Austen", Pages = 463}, + new(){ Title = "Vater Goriot", Author ="Honoré de Balzac", Pages = 732}, + new(){ Title = "Das Dekameron", Author ="Giovanni Boccaccio", Pages = 412}, + new(){ Title = "Sturmhöhe", Author ="Emily Brontë", Pages = 735}, + new(){ Title = "Der Fremde", Author ="Albert Camus", Pages = 528} + }; + - //Code ENDE } + } + + //Code START + class Libro + { + public string? Title {get;set;} + public string? Author {get;set;} + public int Pages {get;set;} + } + //Code ENDE } \ No newline at end of file diff --git a/E37_Serialisierung/Exercise_2.cs b/E37_Serialisierung/Exercise_2.cs deleted file mode 100644 index b74a1e7..0000000 --- a/E37_Serialisierung/Exercise_2.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System; -using System.IO; -using System.Collections.Generic; - -namespace Exercises_C_Sharp.E37_Serialisierung -{ - class Exercise_2 - { - public static void Start() - { - //Code START - - //Code ENDE - } - } -} \ No newline at end of file diff --git a/Program.cs b/Program.cs index ec71684..9fb4ec2 100644 --- a/Program.cs +++ b/Program.cs @@ -561,14 +561,15 @@ namespace Exercises_C_Sharp }; //************************ - //*******Dateiformate******* TODO + //******Dateiformate****** //************************ ExerciseGroup fileformatsElements = new() { Name = "36. Dateiformate", ElementList = new() { - new(){Name = "Übung 1", Method = E18_Methods.Exercise_1.Start} + new(){Name = "Übung 1", Method = E36_Dateiforamte.Exercise_1.Start}, + new(){Name = "Übung 2", Method = E36_Dateiforamte.Exercise_2.Start} } }; @@ -580,8 +581,7 @@ namespace Exercises_C_Sharp Name = "37. Serialisierung", ElementList = new List() { - new(){Name = "Aufgabe 1", Method = Exercises_C_Sharp.E37_Serialisierung.Exercise_1.Start}, - new(){Name = "Aufgabe 2", Method = Exercises_C_Sharp.E37_Serialisierung.Exercise_2.Start} + new(){Name = "Aufgabe 1", Method = Exercises_C_Sharp.E37_Serialisierung.Exercise_1.Start} } };