diff --git a/Handout 10 - Dateien.pdf b/Handout 10 - Dateien.pdf new file mode 100644 index 0000000000000000000000000000000000000000..22bc1ec7855a0d9d2a46b61842ddf657029b4794 Binary files /dev/null and b/Handout 10 - Dateien.pdf differ diff --git a/Handout 11 - Klassen.pdf b/Handout 11 - Klassen.pdf new file mode 100644 index 0000000000000000000000000000000000000000..4ae83532ef32df47849e67244e7c168d76dae31d Binary files /dev/null and b/Handout 11 - Klassen.pdf differ diff --git a/Handout 12 - Kommandozeilen-Parameter.md b/Handout 12 - Kommandozeilen-Parameter.md new file mode 100644 index 0000000000000000000000000000000000000000..702162db5404050e8578eb7d1e51e4cbe2ec356a --- /dev/null +++ b/Handout 12 - Kommandozeilen-Parameter.md @@ -0,0 +1,54 @@ +# Kommandozeilen-Parameter + + * Programme (.exe-Dateien) können beim Start Argumente (Aufrufparameter, Kommandozeilen-Parameter) übergeben bekommen + * Häufigster Anwendungsfall: erstes Argument ist ein Dateiname + - Beispiel: Doppelklicken eines Word-Dokuments ruft `word.exe <angeglickte Datei>` auf + * In C# zeigen sich die Kommandozeilen-Parameter im Parameter-Array `string[] args` der Main-Funktion + +## Beispiel: Programm LineCount + +Ermittelt die Zeilenanzahl einer angegeben Textdatei. + +```csharp +class LineCount +{ + static void Main(string[] args) + { + // Prüfen, ob Dateiname angegeben wurde + if (args.Length != 1) + { + Console.WriteLine("Benutzung: wordcount <dateiname>"); + return; // Return aus Main beendet das Programm + // Alternativ mit Status: Environment.Exit(int exitcode) + } + + // Prüfen, ob Datei existiert + string datei = args[0]; + if (!File.Exists(datei)) + { + Console.WriteLine("Datei existiert nicht: " + datei); + return; // Return aus Main beendet das Programm + } + + // Datei öffnen + StreamReader sr = new StreamReader(datei); + int anzahl = 0; // Variable für Wort-Anzahl + while (sr.ReadLine() != null) + anzahl++; + + // Ausgabe des Ergebnisses + Console.WriteLine("Datei " + datei + " enthält " + anzahl + " Zeilen."); + + sr.Close(); + } +} +``` + +### Aufruf / Verwendung der Kommandozeilen-Parameter + + * Kommandozeile: (unter Windows `cmd.exe`, Start am besten durch Shift+Rechtsklick auf Verzeichnis im Browser → Eingabeaufforderung hier öffnen) + * Visual Studio: + - Projekt im Solution-Explorer auswählen → rechte Maustaste + - dann Einstellungen (Properties) → Debug → Start Options → Command Line Arguments + + \ No newline at end of file diff --git a/Handout 12 - Kommandozeilen-Parameter.pdf b/Handout 12 - Kommandozeilen-Parameter.pdf new file mode 100644 index 0000000000000000000000000000000000000000..1aca2d8d025c2ddad823e6d47123743d9eb7737d Binary files /dev/null and b/Handout 12 - Kommandozeilen-Parameter.pdf differ