Projekt DSuche

Aus Info-Theke
Version vom 24. Dezember 2020, 23:16 Uhr von 217.88.88.80 (Diskussion) (→‎Projekt erstellen)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Zielsetzung[Bearbeiten]

Es wir ein Kommandozeilenprogramm erstellt, das reguläre Ausdrücke in einer Datei sucht.

Kenntnisse[Bearbeiten]

  • Projekt erstellen
  • Programmargument auswerten
  • Paket importieren
  • Datei lesen

Projekt erstellen[Bearbeiten]

  • IdeaIC starten
  • Linke Spalte: "Projects" anklicken
  • "New Project"
  • Linke Spalte: "Dart"
  • Dart-SDK:
    • Windows: c:\dart-sdk
    • Linux: ~/dart-sdk
  • Es erscheint eine Listbox, dort Console-Application a command-line application sample anklicken
  • Next-Button
  • Project name: dsuche
  • Project loction:
    • Linux: ~/dev/dsuche
    • Windows: c:\dev\dsuche
  • Finish-Button

Damit ist das Projekt erstellt.

Projekt erkunden[Bearbeiten]

  • Linke Spalte: Projects anklicken
  • Es wird ein Ordner namens dsuche sichtbar
  • auf das Symbol ">" klicken, dann klappt das Verzeichnis aus
  • Im Unterverzeichnis bin liegt die Datei mit dem Hauptprogramm, dsuche.dart
  • Im Unterverzeichnis lib liegt eine zweite Datei dsuche.dart, die ergänzenden Code enthält. In diesem Projekt brauchen wir diese Datei nicht. also löschen: Rechte Maustaste - Delete
  • ziemlich unten gibt es die Datei pubspec.yaml Dort werden Pakete eingetragen. In diesem Projekt brauchen wir nichts zusätzliches, daher bleibt die Datei unverändert.

Programmcode in dsuche.dart[Bearbeiten]

Kopiere folgenden Code in die Datei bin\dsuche.dart

import 'dart:io';
/// Durchsuchen einer Datei nach einem regulären Ausdruck.
/// [args]: Programm-Argumente, z.B. [r'https?://', 'rechnung.txt']
void main(List<String> args) {
  if (args.length < 2){
    print('Gebrauch: dsuche <suchmuster> <date>\nBeispiel: dsuche "https?://" rechnung.txt');
  } else {
    final lines = File(args[1]).readAsLinesSync();
    RegExp regExp = RegExp(args[0], caseSensitive: false);
    for (var line in lines){
      if (regExp.firstMatch(line) != null){
        print(line);
      }
    }
  }
}

Programm in der Entwicklungsumgebung starten[Bearbeiten]

  • In der Toolbar den grünen Hammer Add configuration klicken
  • Es geht eine Dialogbox auf: Oben links auf das + klicken
  • In der Liste Dart Command Line App
  • Name: dsuche
  • Dart file: Hier auf das Ordnersymbol in dem Textfeld klicken, dort Ordner dsuche aufklappen, im Unterordner bin die Datei dsuche.dart anklicken.
  • Program arguments:
    • Windows: https?:// c:\dev\links.txt
    • Linux: https?:// ~/dev/links.txt
  • Button Ok
  • Im Entwicklungsordner (Windows: c:\dev, Linux: ~/dev/) eine Datei links.html anlegen:
Dies ist eine Testdatei
Suchen geht mit https://google.com
Spezialwissen findet sich auf http://wikipedia.de
Hab Spaß mit Programmieren.

Programm compilieren[Bearbeiten]

Windows[Bearbeiten]

  • Eingabeaufforderung starten
  • gdev dsuche
  • dcompile dsuche

Danach gibt es die Datei c:\dev\bin\dsuche.exe Dieses Programm kann in der Eingabeaufforderung gestartet werden.

gdev
dsuche https?:// links.txt