java:console_read

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

java:console_read [2015/06/20 02:17]
gthanos [Διαβάζοντας από το System.in]
java:console_read [2016/02/26 11:15]
Line 1: Line 1:
-====== Διαβάζοντας από την κονσόλα ====== 
- 
-Προκειμένου να διαβάσετε από την κονσόλα έχετε δύο επιλογές 
-  - να διαβάσετε με χρήση του standard stream **System.in**. Τα standard streams ορίζονται από το λειτουργικό σύστημα και είναι τα εξής: **System.in**,​ **System.err**,​ **System.out** (σε αναλογία με τα STDIN, STDERR, STDOUT στη γλώσσα **C**). 
-  - Με χρήση της κλάσης **[[http://​docs.oracle.com/​javase/​7/​docs/​api/​java/​io/​Console.html|java.io.Console]]**. 
- 
-===== Διαβάζοντας από το System.in ===== 
- 
-To **System.in** είναι ένα stream τύπου byte-stream. Συνήθως από την κονσόλα θέλουμε να διαβάσουμε χαρακτήρες. Στις περιπτώσεις αυτές απαιτείται να το μετατρέψουμε σε character stream ως εξής: 
- 
-<code java> 
-InputStreamReader cin = new InputStreamReader(System.in);​ 
-</​code>​ 
- 
-Τον παραπάνω κώδικα συνήθως τον εντάσσουμε μέσα σε ένα block try/catch, όπως παρακάτω 
- 
-<code java> 
-  try (InputStreamReader r = new InputStreamReader(System.in)) { 
-     ... 
-  } catch (IOException ex) { 
-    System.out.println("​Unable to read from STDIN"​);​ 
-    System.exit(1);​ 
-  }      ​ 
-</​code>​ 
- 
-Για την διευκόλυνση σας, κατά την ανάγνωση μπορείτε να δημιουργήσετε ένα αντικείμενο της κλάσης java.io.BufferedReader,​ όπως παρακάτω. Το πλεονέκτημα της συγκεκριμένης επιλογής είναι ότι η κλάση BufferedReader σας δίνει την δυνατότητα να διαβάσετε απευθείας μία γραμμή από το stream μέσω της μεθόδου readLine. 
- 
-<code java> 
-  try (BufferedReader r = new BufferedReader(new InputStreamReader(System.in)) ) { 
-     ... 
-  }catch (IOException ex) { 
-    System.out.println("​Unable to read from STDIN"​);​ 
-    System.exit(1);​ 
-  }      ​ 
-</​code>​ 
- 
-===== Διαβάζοντας με χρήση της κλάσης Console ===== 
- 
- 
- 
- 
  
java/console_read.txt · Last modified: 2016/02/26 11:15 (external edit)