ZP3JV-09: práce se soubory
- blax65
- 30. 10. 2015
- Minut čtení: 1
Odkaz na cvičení: zde
Odkaz s řešenými zdrojovými kódy: zde
Úkol č.1
Napište metodu int[][] readTextMatrix(String fileName), která načte z textového souboru matici celých čísel. Jednotlivé řádky souboru představují řádky matice, jednotlivé hodnoty v řádku jsou odděleny mezerou. Pokud dojde k chybě, metoda by měla vyvolat vyjímku.
Úkol č.2
Upravte předchozí metodu tak, aby její argument byl Reader, tj. int[][] readTextMatrix(Reader r). Vyzkoušejte, že jí lze předat objekt třídy FileReader i StringReader.
Úkol č.3
Napište metodu void writeTextMatrix(String fileName, int[][] matrix), která zapíše do textového souboru matici celých čísel. Jednotlivé řádky souboru představují řádky matice, jednotlivé hodnoty v řádku jsou odděleny mezerou. Pokud dojde k chybě, metoda by měla vyvolat vyjímku.
Úkol č.4
Upravte předchozí metodu tak, aby její argument byl Writer. Vyzkoušejte, že jí lze předat objekt třídy FileWriter i StringWriter.
Úkol č.5
Napište metodu void writeBinaryMatrix(OutputStream s, int[][] matrix), která zapíše do streamu matici celých čísel, hodnoty zapisujte v jejich binarní podobě. Zvolte si vhodný formát. Metodu napište tak, aby byla schopná pracovat s různými typy streamů.
Úkol č.6
Napište metodu int[][] readBinaryMatrix(InputStream s), která načte matici celých čísel vytvořenou předchozí metodou.
U všech úkolů ověřte, že matice zapsaná danou metodou jde opět načíst a načtená matice obsahuje stejné hodnoty! Ověřte, že ve všech maticích mohou být libovolné celočíselné hodnoty včetně nuly a hodnot záporných.
Comments