Java:Sisend-Väljund
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>