Update of exercises
parent
f72c7edbd9
commit
7d9e20dfd2
File diff suppressed because one or more lines are too long
Binary file not shown.
|
@ -10,7 +10,7 @@ Einen `InputStream` benutzen, um Daten aus einer Datei zu lesen.
|
||||||
|
|
||||||
Gehen Sie in das Paket [pr2.io.datei_lesen](../sources/src/main/java/pr2/io/datei_lesen/).
|
Gehen Sie in das Paket [pr2.io.datei_lesen](../sources/src/main/java/pr2/io/datei_lesen/).
|
||||||
|
|
||||||
Lesen Sie die Daten aus der Datei `daten.dat` byteweise und geben Sie den Inhalt auf der Konsole aus. Für die Ausgabe verwenden Sie bitte die Hexadezimale Darstellung, also z.B. `0x0a` für den Wert 11.
|
Lesen Sie die Daten aus der Datei [daten.dat](../sources/src/main/resources/pr2/io/datei_lesen/daten.dat) byteweise und geben Sie den Inhalt auf der Konsole aus. Für die Ausgabe verwenden Sie bitte die Hexadezimale Darstellung, also z.B. `0x0a` für den Wert 11.
|
||||||
|
|
||||||
Lassen Sie das Programm laufen und betrachten Sie die Ausgabe. Wenn Sie alles korrekt implementiert haben, sollten Sie den Text
|
Lassen Sie das Programm laufen und betrachten Sie die Ausgabe. Wenn Sie alles korrekt implementiert haben, sollten Sie den Text
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@ Implementieren Sie einen [Bubblesort](https://de.wikipedia.org/wiki/Bubblesort)
|
||||||
|
|
||||||
Implementieren Sie die bereits vorhandene Methode `sortFile` der Klasse `FileSort`. Öffnen Sie zuerst die Datei mithilfe von `RandomAccessFile` im Modus `"rw"`. Wandern Sie nun - entsprechend dem Bubblesort-Algorithmus - über die Daten und sortieren Sie die Bytes der Datei. Halten Sie nie mehr als zwei `byte` und die Position als `long` im Speicher. Weitere Variablen können auch noch nötig sein, um den Algorithmus zu implementieren.
|
Implementieren Sie die bereits vorhandene Methode `sortFile` der Klasse `FileSort`. Öffnen Sie zuerst die Datei mithilfe von `RandomAccessFile` im Modus `"rw"`. Wandern Sie nun - entsprechend dem Bubblesort-Algorithmus - über die Daten und sortieren Sie die Bytes der Datei. Halten Sie nie mehr als zwei `byte` und die Position als `long` im Speicher. Weitere Variablen können auch noch nötig sein, um den Algorithmus zu implementieren.
|
||||||
|
|
||||||
Testen Sie Ihre Implementierung mit den JUnit-Tests.
|
Testen Sie Ihre Implementierung mit den JUnit-Tests. Die Testdatei für den Unit-Test ist [data.dat](../sources/src/main/resources/pr2/io/random_access/data.dat)
|
||||||
|
|
||||||
|
|
||||||
## Abgabe (optional)
|
## Abgabe (optional)
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -10,7 +10,7 @@ Textdaten mithilfe von `Reader` verarbeiten.
|
||||||
|
|
||||||
Gehen Sie in das Paket [pr2.io.reader_writer](../sources/src/main/java/pr2/io/reader_writer/).
|
Gehen Sie in das Paket [pr2.io.reader_writer](../sources/src/main/java/pr2/io/reader_writer/).
|
||||||
|
|
||||||
Lesen Sie die Datei [kafka.txt](assets/kafka.txt) mit einem passenden `Reader` ein und geben Sie sie auf der Konsole aus. Verwenden Sie nicht die `read()`-Methode, die einzelne Zeichen verarbeitet, sondern arbeiten Sie mit einem `char[]`-Buffer.
|
Lesen Sie die Datei [kafka.txt](../sources/src/main/resources/pr2/io/reader_writer/kafka.txt) mit einem passenden `Reader` ein und geben Sie sie auf der Konsole aus. Verwenden Sie nicht die `read()`-Methode, die einzelne Zeichen verarbeitet, sondern arbeiten Sie mit einem `char[]`-Buffer.
|
||||||
|
|
||||||
|
|
||||||
## Abgabe (optional)
|
## Abgabe (optional)
|
||||||
|
|
|
@ -18,7 +18,7 @@ Schauen Sie sich die Klassen `Board` und `Color` genau an und versuchen Sie dies
|
||||||
|
|
||||||
Implementieren Sie nun die Methoden `writeToFile` und `loadFromFile` unter Zuhilfenahme von Serialisierung. D.h. anders als in der Aufgabe zu `DataOutputStream`, sollen Sie hier kein eigenes Datenformat implementieren. Verwenden Sie stattdessen einen `ObjectOutputStream` bzw. `ObjectInputStream`.
|
Implementieren Sie nun die Methoden `writeToFile` und `loadFromFile` unter Zuhilfenahme von Serialisierung. D.h. anders als in der Aufgabe zu `DataOutputStream`, sollen Sie hier kein eigenes Datenformat implementieren. Verwenden Sie stattdessen einen `ObjectOutputStream` bzw. `ObjectInputStream`.
|
||||||
|
|
||||||
Lassen Sie den JUnit-Test laufen, um zu sehen, ob die Daten korrekt verarbeitet werden.
|
Lassen Sie den JUnit-Test laufen, um zu sehen, ob die Daten korrekt verarbeitet werden. Die Test-Datei für den Unit-Test ist [testdata.dat](../sources/src/main/resources/pr2/io/serialisierung/testdata.dat)
|
||||||
|
|
||||||
|
|
||||||
## Abgabe (optional)
|
## Abgabe (optional)
|
||||||
|
|
Binary file not shown.
|
@ -44,7 +44,7 @@ public class FileSortTest {
|
||||||
*/
|
*/
|
||||||
@Test
|
@Test
|
||||||
void testBubbleSort() throws IOException {
|
void testBubbleSort() throws IOException {
|
||||||
copyFile("assets/data.dat", "output/data.dat");
|
copyFile("data.dat", "output/data.dat");
|
||||||
FileSort.sortFile("output/data.dat");
|
FileSort.sortFile("output/data.dat");
|
||||||
|
|
||||||
InputStream is = new FileInputStream("output/data.dat");
|
InputStream is = new FileInputStream("output/data.dat");
|
||||||
|
|
|
@ -39,7 +39,7 @@ public class BoardTest {
|
||||||
|
|
||||||
assertEquals(stringRepresentation, s.toString());
|
assertEquals(stringRepresentation, s.toString());
|
||||||
|
|
||||||
s = Board.loadFromFile("pr2/io/serialisierung/testdata.dat");
|
s = Board.loadFromFile("testdata.dat");
|
||||||
|
|
||||||
assertEquals(stringRepresentation, s.toString());
|
assertEquals(stringRepresentation, s.toString());
|
||||||
}
|
}
|
||||||
|
|
|
@ -44,7 +44,7 @@ public class FileSortTest {
|
||||||
*/
|
*/
|
||||||
@Test
|
@Test
|
||||||
void testBubbleSort() throws IOException {
|
void testBubbleSort() throws IOException {
|
||||||
copyFile("assets/data.dat", "output/data.dat");
|
copyFile("data.dat", "output/data.dat");
|
||||||
FileSort.sortFile("output/data.dat");
|
FileSort.sortFile("output/data.dat");
|
||||||
|
|
||||||
InputStream is = new FileInputStream("output/data.dat");
|
InputStream is = new FileInputStream("output/data.dat");
|
||||||
|
|
|
@ -39,7 +39,7 @@ public class BoardTest {
|
||||||
|
|
||||||
assertEquals(stringRepresentation, s.toString());
|
assertEquals(stringRepresentation, s.toString());
|
||||||
|
|
||||||
s = Board.loadFromFile("pr2/io/serialisierung/testdata.dat");
|
s = Board.loadFromFile("testdata.dat");
|
||||||
|
|
||||||
assertEquals(stringRepresentation, s.toString());
|
assertEquals(stringRepresentation, s.toString());
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because one or more lines are too long
Binary file not shown.
Loading…
Reference in New Issue