Výstupy do textového souboru
V programovacím jazyce Java můžeme snadno zapisovat do textových souborů. Textové soubory jsou užitečné pro ukládání strukturovaných dat a konfigurací. CSV (Comma Separated Values) soubory jsou speciální typ textových souborů, které slouží k ukládání tabulkových dat, kde jsou hodnoty odděleny určitým oddělovačem. V tomto studijním materiálu se dozvíte, jak zapisovat data do textového souboru a pracovat s CSV soubory v Javě.
1. Zápis do textového souboru
Pro zápis do textového souboru v Javě použijeme třídu FileWriter. Tato třída nám umožňuje zapisovat textové řetězce do souboru. Nejdříve si vytvoříme objekt FileWriter pro požadovaný soubor, pak pomocí metody write() zapisujeme data a nakonec musíme soubor zavřít pomocí metody close().
import java.io.FileWriter; import java.io.IOException; public class ZapisDoTextovehoSouboru { public static void main(String[] args) { try { FileWriter writer = new FileWriter("data.txt"); writer.write("Hello, World!\n"); writer.write("Vítejte ve světě Java!"); writer.close(); System.out.println("Data byla zapsána do textového souboru."); } catch (IOException e) { System.out.println("Chyba při zápisu do souboru: " + e.getMessage()); } } }
2. Zápis do CSV souboru
Pro práci s CSV soubory, kde jsou hodnoty odděleny určitým oddělovačem, můžeme využít třídu CSVWriter z knihovny OpenCSV. Pokud tuto knihovnu nemáme, musíme ji nejprve stáhnout a přidat do projektu. OpenCSV nám poskytuje jednoduché metody pro zápis dat do CSV souborů.
import com.opencsv.CSVWriter; import java.io.FileWriter; import java.io.IOException; public class ZapisDoCSVSouboru { public static void main(String[] args) { try { CSVWriter writer = new CSVWriter(new FileWriter("data.csv"), ';'); String[] data1 = {"Jmeno", "Prijmeni", "Vek"}; String[] data2 = {"Alice", "Novakova", "25"}; String[] data3 = {"Bob", "Svoboda", "30"}; writer.writeNext(data1); writer.writeNext(data2); writer.writeNext(data3); writer.close(); System.out.println("Data byla zapsána do CSV souboru."); } catch (IOException e) { System.out.println("Chyba při zápisu do souboru: " + e.getMessage()); } } }
V příkladu výše jsou hodnoty v CSV souboru odděleny středníkem, což je určeno parametrem ';' v konstruktoru třídy CSVWriter.
Poznámka: Při práci se soubory v Javě je důležité se ujistit, že jsou soubory správně uzavřeny (metoda close()), aby se uvolnily zdroje a minimalizovaly možné problémy s pamětí. Také je vhodné zachytávat a zpracovávat případné výjimky, které mohou nastat při práci se soubory, například pokud není soubor nalezen nebo není přístupný pro zápis.