====== 8. Cvičení ====== Cílem tohoto cvičení je procvičit si práci s textovýni, binárními soubory a serializací. ===== Úkoly na cvičení ===== - Napište program, který nahradí posloupnost „bílých“ znaků (tabelátor, mezera, odřádkování, ...) ve vstupním textovém souboru znakem mezera. Zjištění zda číslo získané pomocí int c = fr.read(); je „bílým“ znakem zajistí if(Character.isWhitespace((char) c)) //... je bílý - Napište program, který očísluje řádky ve vstupním textovém souboru. - Napište program, který spočítá počet slov ve vstupním textovém souboru. - Napište program, který přečte ze standardního vstupu posloupnost reálných čísel a zapíše ji do binárního souboru. [[https://cw.fel.cvut.cz/wiki/_media/courses/b0b36pjv/tutorials/08/input_cv8_0.tar.gz|textové soubory ke stažení zde]] ==== Serializace ==== - Napište program, který z CSV souboru načte data do vhodné kolekce. Data z této kolekce bude umět serializovat do souboru a znovu načíst. Co se stane, pokud objektu, který ukládáte do kolekce, přidáte atribut a pokusíte se načíst serializovaný soubor? Použijte například CSV s telefonním seznamem osob - ke stažení zde [[http://www.kr-kralovehradecky.cz/cz/telefonni_seznam.php?send=NULL&odbory=16]] - lokální kopie {{:courses:b6b36pjv:tutorials:08:tel_seznam_kup_2.zip|ZDE}} Zamyslete se nad použitím například [[https://docs.oracle.com/javase/8/docs/api/java/util/StringTokenizer.html|StringTokenizeru]]. ==== XML ==== - Projděte si ukázkovou aplikaci s třídou XMLStreamReader a pokuste se data z XML souboru dostat do vhodné kolekce. Vyzkoušejte si XML soubor změnit, přidat atributy a text mezi různé tagy. Sledujte, jakým způsobem se k těmto datům můžete dostat. ===== Materiály na cvičení ===== [[soubory|]] [[serializace|]] [[xml|]]