uebungen/Assignment_048/readme.md

37 lines
1.4 KiB
Markdown
Raw Permalink Normal View History

2024-01-21 13:36:56 +01:00
# DataOutputStream
2023-05-03 19:40:30 +02:00
2024-01-08 15:32:04 +01:00
[Musterlösung](solution/)
2023-05-03 19:40:30 +02:00
## Lernziel
2024-01-21 13:36:56 +01:00
Daten mit einem `DataOutputStreams` manuell serialisieren.
2023-05-03 19:40:30 +02:00
## Aufgabe
2024-01-21 13:36:56 +01:00
Gehen Sie in das Paket [pr2.io.datainputoutput_1](../sources/src/main/java/pr2/io/datainputoutput_1/).
2023-05-03 19:40:30 +02:00
2024-01-21 13:36:56 +01:00
Schreiben Sie eine Klasse `DateWriter`, die ein Datum in der Form yyyy-MM-dd (z.B. 1997-08-29) von der Konsole annimmt und als `long`-Wert mithilfe eines `DataOutputStreams` in eine Datei schreibt.
2023-05-03 19:40:30 +02:00
2024-01-21 13:36:56 +01:00
Schreiben Sie eine Klasse `DateReader`, die den `long`-Wert aus der Datei ausliest und wieder in das ursprüngliche Format bringt und auf der Konsole ausgibt.
**Hinweis:** Zur Konvertierung eines Strings in ein Datum und umgekehrt, können Sie die Klasse `SimpleDateFormat` verwenden. Ein `Date`-Objekt lässt sich leicht über die Methode `getTime` in einen `long`-Wert umwandeln. Denken Sie an eine korrekte Behandlung von möglichen Fehlern.
2023-05-03 19:40:30 +02:00
```console
2024-01-21 13:36:56 +01:00
> java DateWriter 1997-08-29
> java DateReader
Das Datum war: 1997-08-29
2023-05-03 19:40:30 +02:00
```
2024-01-21 13:36:56 +01:00
**Zusatzfrage:** Welche besondere Bedeutung hat das hier als Beispiel verwendete Datum?
2023-05-03 19:40:30 +02:00
## Abgabe (optional)
__Sie müssen keine Lösung für diese Aufgabe einreichen.__
Sie können Ihre Lösung aber auf die Konformität mit den Programmierstandards testen. Hierzu gehen Sie wie folgt vor:
1. Öffnen Sie eine Kommandozeile (Terminal).
2. Gehen Sie in Ihr Working Directory.
3. Wechseln Sie mit `cd` in das Verzeichnis `sources`.
2023-12-31 11:13:34 +01:00
4. Bauen Sie das Projekt mit dem Kommando `mvn`.