Projekt DSuche: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(6 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 19: | Zeile 19: | ||
* <code>Next</code>-Button | * <code>Next</code>-Button | ||
* Project name: <code>dsuche</code> | * Project name: <code>dsuche</code> | ||
* Project loction: | |||
** Linux: <code>~/dev/dsuche</code> | |||
** Windows: <code>c:\dev\dsuche</code> | |||
* <code>Finish</code>-Button | * <code>Finish</code>-Button | ||
Damit ist das Projekt erstellt. | Damit ist das Projekt erstellt. | ||
Zeile 32: | Zeile 35: | ||
= Programmcode in dsuche.dart = | = Programmcode in dsuche.dart = | ||
Kopiere folgenden Code in die Datei <code>bin\dsuche.dart</code> | Kopiere folgenden Code in die Datei <code>bin\dsuche.dart</code> | ||
<pre> | <pre>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); | |||
} | |||
} | |||
} | |||
} | |||
</pre> | |||
= Programm in der Entwicklungsumgebung starten = | |||
* In der Toolbar den grünen Hammer <code>Add configuration</code> klicken | |||
* Es geht eine Dialogbox auf: Oben links auf das <code>+</code> klicken | |||
* In der Liste <code>Dart Command Line App</code> | |||
* Name: <code>dsuche</code> | |||
* Dart file: Hier auf das Ordnersymbol in dem Textfeld klicken, dort Ordner <code>dsuche</code> aufklappen, im Unterordner <code>bin</code> die Datei <code>dsuche.dart</code> anklicken. | |||
* Program arguments: | |||
** Windows: <code>https?:// c:\dev\links.txt</code> | |||
** Linux: <code>https?:// ~/dev/links.txt</code> | |||
* Button <code>Ok</code> | |||
* Im Entwicklungsordner (Windows: c:\dev, Linux: ~/dev/) eine Datei links.html anlegen: | |||
<pre>Dies ist eine Testdatei | |||
Suchen geht mit https://google.com | |||
Spezialwissen findet sich auf http://wikipedia.de | |||
Hab Spaß mit Programmieren. | |||
</pre> | |||
= Programm compilieren = | |||
== Windows == | |||
* Eingabeaufforderung starten | |||
* <code>gdev dsuche</code> | |||
* <code>dcompile dsuche</code> | |||
Danach gibt es die Datei <code>c:\dev\bin\dsuche.exe</code> | |||
Dieses Programm kann in der Eingabeaufforderung gestartet werden. | |||
<pre>gdev | |||
dsuche https?:// links.txt | |||
</pre> | </pre> |
Aktuelle Version vom 24. Dezember 2020, 23:16 Uhr
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
- Linux:
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 Dateidsuche.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 Unterordnerbin
die Dateidsuche.dart
anklicken. - Program arguments:
- Windows:
https?:// c:\dev\links.txt
- Linux:
https?:// ~/dev/links.txt
- Windows:
- 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