Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [Java]lettura dal buffer della tastiera

    Ho bisogno di leggere una stringa da tastiera senza entrare nella attesa dell'inserimento di quest'ultima.

    In pratica, mentre eseguo il programma, se scrivo qualcosa deve fare qualcosa ma se non scrivo niente deve continuare l'esecuzione del codice successivo all'input da tastiera...

    non so se sono stato chiaro...
    L'aquilone è simbolo che l'uomo vuole andare più su

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    29
    La soluzione sta nei thread.. consulta la javadoc (in particolare la classe Thread, ma con java5 mi sembra sia cambiata....) e scusa se non ti posto del codice ma sto per andare via... Ciao.

  3. #3
    ho capito le tue intenzioni ma ho bisogno di esempi per capire il funzionamento...
    L'aquilone è simbolo che l'uomo vuole andare più su

  4. #4
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    public class Keyboard extends Thread {
    public void run() {
    System.in.
    e il codice per leggere da tastiera
    }
    }

    la classe la istanzi con
    Keyboard k = new Keyboard();
    k.start();

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Piccolo esempio:
    codice:
    import java.io.*;
    public class Main {
       public static void main(String[] args) throws Exception {
          Tastiera t = new Tastiera();
          t.start();
          int i = 0;
          while (i < 1000) {
             i++;
             System.out.println(i);
             Thread.sleep(500);
          }
       }
    }
    
    import java.io.*;
    
    public class Tastiera extends Thread {
       private boolean attivo;
       private BufferedReader br;
       public Tastiera() {
          attivo = true;
       }
       public void run() {
          try {
             String testo;
             br = new BufferedReader( new InputStreamReader( System.in ) );
             while( attivo ) {
                testo = br.readLine();
                System.out.println("Hai digitato: " + testo);
             }
          } catch (Exception e) {}
       }
       public void disattiva() { attivo = false; }
    }
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.