Als Grundlage dieser Übung muss das Projekt Textdatei bereits erarbeitet sein. In dieser Übung sollen Textumwandlungen durchgeführt und die Ergebnisse in Textdateien gespeichert werden.
Aufgabe: |
|
a) Verwenden Sie aus dem Projekt Textdatei das Programm ConTextdatei: Erzeugen Sie einen neuen Ordner Textwandel. Kopieren Sie die Datei ConTextdatei.java hinein und laden Sie sie im JavaEditor. Ändern Sie den Wert des Attributes myFilename auf "test2.txt", kommentieren Sie in der main-Methode die Aufrufe zum Schreiben und Ergänzen aus und speichern Sie dann alsConTextwandel.java ab. Laden Sie untenstehende Datei test2.txt und speichern Sie im neuen Ordner Textwandel. Starten Sie nun ConTextwandel und lesen Sie damit diese Datei ein. Was fällt auf? |
Consolen-Ausgabe: |
b) Grund für die ggf. fehlerhafte Darstellung der Umlaute ist die falsche Einstellung der sog. Codepage im Konsolenfenster. Die darin ablaufende Consolen-Anwendung übersetzt die Codezahlen der Umlaute in falsche Zeichen. Um herauszufinden, welche Integer-Codezahlen statt der korrekten Umlaute-Codes aus der Datei gelesen werden, erstellen Sie im Windows-Editor eine Datei test1.txt, die in sieben Zeilen wie nebenstehend die Umlaute enthält. Laden Sie diese nun mit dem Programm ConTextwandel. c) Erweitern Sie die Methode aus_datei_lesen(): Hier soll nun nicht mehr nur jede Codezahl mittels TypeCast umgewandelt und dem Ausgabe-String hinzugefügt werden, sondern zusätzlich (z. B. in Klammern dahinter) auch deren Codezahl. Dies ergibt dann z. B. A(65)e(101). Lesen Sie erneut test1.txt ein und merken Sie sich die zusätzlich angezeigten Codezahlen der Umlaute und des Eszet. |
ä ae |
d) Speichern Sie ConTextwandel als ConTextwandel1.java ab. Erweitern Sie erneut die Methode aus_datei_lesen(). Nun soll nicht mehr die Codezahl mit angezeigt werden, sondern (in einer CASE...SWITCH-Struktur - also durch Mehrfach-Abfrage) in den Fällen, wenn die Codezahl einer der ermittelten entspricht, der korrekte Umlaut dem Ausgabe-String hinzugefügt werden. Trifft keiner der Fälle zu, wird wie bisher die Codezahl mittels TypeCast in das Zeichen umgewandelt. Überprüfen Sie, dass die Umlaute nun korrekt behandelt werden (mit test1.txt und test2.txt). |
|
e) Erstellen Sie nun eine ConTextwandel2.java, in der statt der erweiterten Methode aus_datei_lesen() in einer danach aufgerufenen Methode umlaute_korrigieren() der Inhalt des Attributes myString mittels siebenmaligen Aufrufes der String.replace()-Methode korrigiert werden. Informieren Sie sich in der JDK-API-Hilfe über diese Methode der String-Klasse. Entnehmen Sie zusätzlich aus allen Methoden die System.out.println()-Aufrufe und implementieren Sie statt dessen eine Methode myString_anzeigen(). |
|
f) Verwenden Sie nun aus
dem Projekt Textdatei die Datei GuiTextdatei als GuiTextwandler.
Erweitern Sie diese so, dass auf 'Knopfdruck' jedes Wort in myString
so verändert wird: nur der erste und letzte Buchstabe behält
seinen Platz, alle übrigen nehmen zufällige Positionen
ein. Der so veränderte Text wird dann angezeigt und ist abspeicherbar. |
|
Download für Schüler:
|
|
© 2007,2010 Ziemke .:. Letzte Aktualisierung am 12. Dezember 2010 durch den WebMaster.