Cvičenie 7 – Výnimky, zápis do súboru
Ciele cvičení:
- Čo sú výnimky a ako ich odchytávať.
- try-catch-finally.
- Práca so súborovým systémom.
- Zapisovanie do textových súborov.
Výnimky
- Diskutujte, čo sú výnimky a na čo slúžia.
- Na čo slúži metóda
Integer.parseInt
? Nájdite v dokumentácii, akú behovú výnimku môže hodiť? - Vytvorte triedu
SmartTurtle
, ktorá rozšíruje trieduTurtle
. Do triedySmartTurtle
pridajte metódustringToInt
, ktorá transformuje znakový reťazec na číslo. Ak transformácia nevyjde (napr. reťazec nie je číselným reťazcom), metóda nech vráti hodnotu zadanú parametromdefaultValue
.
1
Práca so súbormi v adresároch
Vytvorte triedu TurtleCommander
, ktorá rozširuje triedu Turtle
. Pri všetkách nasledujúcich metódach uvažujeme len súbory priamo v zadanom adresári, t.j. nie v podadresároch.
- Pridajte do triedy
TurtleCommander
metódu, ktorá vypíše názvy všetkých súborov a adresárov v zadanom adresári:
1
- Pridajte do triedy
TurtleCommander
metódu, ktorá vráti počet súborov (nie adresárov) v zadanom adresári:
1
- Pridajte do triedy
TurtleCommander
metódu, ktorá vráti súčet veľkosti súborov (nie adresárov) v zadanom adresári:
1
- Pridajte do triedy
TurtleCommander
metódu, ktorá overí, či sa v oboch zadaných adresároch nachádza nejaký súbor (pozor, nie adresár) s rovnakým menom:
Tresty
- Do triedy
TurtleCommander
pridajte metódupunishment
, ktorá do zadaného súboru vypíše reťazec zadaný počet krát:
Príklad použitia:
- Kde sa vytvorí súbor
trest.txt
? - Otvorte vytvorený súbor v textovom editore.
- Porovnajte veľkosť vytvoreného súboru s počtom zapisovaných znakov.
- Otvorte vytvorený textový súbor ako binárny súbor.
Kódy znakov
- Do triedy
TurtleCommander
pridajte metódugenerateUnicodeFile
, ktorá do zadaného súboru vypíše znaky a ich kódy. Vypíšte iba znaky, ktorých kódy sú zo zadaného intervalu.
1
Záznam kliknutí
Vytvorte triedu ClickPane
, ktorá bude rozširovať triedu WinPane
. Klikacia plocha nech funguje tak, že pri kliknutí do plochy sa mieste kliknutia nakreslí bodka náhodného polomeru medzi 2 až 5. Do triedy ClickPane
pridajte metódu saveClicksToFile
, ktorá ako parameter dostane názov súboru (alebo referenciu na objekt triedy File
s názvom súboru). Táto metóda nech uloží do zadaného súboru informácie o všetkých nakreslených bodkách od vytvorenia plochy. Informácia o jednej bodke nech je v jednom riadku súboru a skladá sa z 3 čísel: x-ová súradnica stredu bodky, y-ová súradnica stredu bodky a polomer bodky.
Môžete predpokladať, že nikdy sa nespraví viac ako 1000 bodiek od vytvorenia kresliacej plochy (t.j. nemeňte veľkosť poľa po každom kliknutí).
Príklad súboru:
1
2
3 100 121 3.5
10 252 2.5
241 139 4.0