Práce se soubory v Javě

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Přidány odkazy na java.nio.file.*)
(Aktualizace odkazů na zdroje)
Řádka 1: Řádka 1:
[[Category:VSE]]
+
[[Category:VSE]][[Category:Informatika]][[Category:Programování]]
[[Category:Informatika]]
+
<div class="Poznamka">Pro podrobnější přehled o způsobech zápisu si pročtete tutoriály: [http://download.oracle.com/javase/tutorial/essential/io/file.html Práce se soubory] a [http://www.javapractices.com/topic/TopicAction.do?Id=42 Práce s textovými soubory]. (Viz také [[#Další_zdroje|Další zdroje]].)</div>
[[Category:Programování]]
+
  
Pro podrobnější přehled o způsobech zápisu si pročtete [http://download.oracle.com/javase/tutorial/essential/io/file.html tutoriál ze stránek firmy Oracle].
+
<div class="Varovani">Pozor!!! Od verze Java SE 7 zvažte použití [http://download.oracle.com/javase/tutorial/essential/io/legacy.html tříd z balíčku java.nio.file]!!!</div>
 
+
''' Pozor!!! Od verze Java SE 7 je výhodnější použít [http://download.oracle.com/javase/tutorial/essential/io/legacy.html tříd z balíčku java.nio.file]!!!
+
  
 
== Manipulace se soubory ==
 
== Manipulace se soubory ==
Řádka 45: Řádka 42:
 
** BufferedWriter
 
** BufferedWriter
 
** BufferedReader
 
** BufferedReader
 +
** Scanner
  
 
== Serializace ==
 
== Serializace ==
Řádka 94: Řádka 92:
 
*#: pro ukládání a čtení si ale musíme připravit metody, které vyřeší třeba situaci, kdy je středník součástí poznámky samotné.
 
*#: pro ukládání a čtení si ale musíme připravit metody, které vyřeší třeba situaci, kdy je středník součástí poznámky samotné.
 
*# použít serializaci. Pak stačí, když třída <code>Poznamka</code> implementuje rozhraní <code>Serializable</code>, protože <code>String</code> i <code>Date</code> toto rozhraní také implementují a jiné atributy třída <code>Poznamka</code> nemá.
 
*# použít serializaci. Pak stačí, když třída <code>Poznamka</code> implementuje rozhraní <code>Serializable</code>, protože <code>String</code> i <code>Date</code> toto rozhraní také implementují a jiné atributy třída <code>Poznamka</code> nemá.
 +
 +
== Další zdroje ==
 +
* [http://download.oracle.com/javase/tutorial/essential/io/file.html Oracle: Reading, Writing, and Creating Files]
 +
* [http://www.javapractices.com/topic/TopicAction.do?Id=42 JavaPractices.com: Reading and Writing Text Files].

Verze z 25. 2. 2013, 10:47

Pro podrobnější přehled o způsobech zápisu si pročtete tutoriály: Práce se soubory a Práce s textovými soubory. (Viz také Další zdroje.)
Pozor!!! Od verze Java SE 7 zvažte použití tříd z balíčku java.nio.file!!!

Obsah

Manipulace se soubory

V nově vytvářených projektech zvažte použití rozhraní (interface) java.nio.file.Path a třídy java.nio.file.Files.

Třída java.io.File




Přístup k obsahu souboru

Příklady

Serializace

Co je to serializace?

Jak serializace funguje?

Zápis a načtení objektu

Následující kód je zjednodušený, neřeší ošetření vyjímek. Jde nám o schéma použití serializace.

  Poznamka pozn = new Poznamka();
  
  File file = new File("cestaANazevSouboru");
  FileOutputStream fos = new FileOutputStream(file);
  ObjectOutputStream objOut = new ObjectOutputStream(fos);
  
  objOut.write (pozn);
  
  objOut.close();

  Poznamka pozn;
  
  File file = new File("cestaANazevSouboru");
  FileInputStream fis = new FileInputStream(file);
  ObjectInputStream objIn = new ObjectInputStream(fis);
  
  pozn = (Poznamka) objIn.read(); // lépe by bylo ověřit správnou třídu pomocí instance_of
  
  objIn.close();

Příklad: poznámkový blok

Další zdroje

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje