Java:Sisend-Väljund

Allikas: Kursused
Redaktsioon seisuga 18. veebruar 2015, kell 01:43 kasutajalt Ago (arutelu | kaastöö)
Mine navigeerimisribale Mine otsikasti

Programmi suhtlemist välismaailmaga toimub läbi sisendi ja väljundi. Lühendatult viidatakse tihti "I/O", mis tähendab input/output.

Seade võib olla ühenduses mitme sisend- ja väljundseadmega.

Masinloetav ja inimloetav voog

Andmed võib jagada kahte kategooriasse: masinloetavad andmed ja inimloetavad andmed. Masinloetavad andmed on esitatud bittidena (ühtede ja nullide jadadena). Inimloetavad andmed koosnevad loetavatest sümbolitest, üldiselt 10nd-süsteemis. Näiteks 3.141592654.

Javas on kaks erinevat voogu:

  • baitvoog (ingl byte stream) masinloetavate andmete jaoks
  • sümbolvoog (ingl character stream) inimloetavate andmete jaoks.

Inimloetavate andmete lugemine

Kui teil on vaja lugeda andmeid mõnest voost (näiteks standardsisendist), saab kasutada sellist wrapperit nagu BufferedReader. Kui voog otse võimaldab lugeda andmeid bait-haaval, siis BufferedReader võimaldab andmeid lugeda reakaupa (oluliselt mugavam).

Näiteks: <source lang="java" line> import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;

public class BufferedReaderExample {

public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); try { System.out.println("write something:"); String line = br.readLine(); System.out.println("got line:" + line); } catch (IOException e) { e.printStackTrace(); } }

}

</source>