Merkkien luku

ilman RETURN:ia?

Miten luetaan Java:lla merkkejä näppäimistöltä niin, että ei tarvitse painaa RETURN:ia?
Esim. ao. ohjelman olisi tarkoitus kaiuttaa jokainen painettu merkki takaisin ruudulle, mutta se vaatii RETURN:n painamista jokaisen merkin jälkeen. Ymmärrän, että System.in on rivipuskuroitu, mutta kuinka em. ongelma ratkaistaan?

public static void main(String[] args) throws java.io.IOException {
char ch;

System.out.println("OHJELMA ALKOI.");
for(;;) {
ch = (char)System.in.read();
System.out.print(ch);
if(ch =='q')break;
}

System.out.println("OHJELMA LOPPUI.");
}

1

336

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • fidel1

      System.in ei ole javan kannalta rivipuskuroitu vaan käyttöjärjestelmän konsoli on. Eli javalla ei voi lukea yksittäisi kirjaimia normaalista konsoli-inputista, koska java-prosessi ei niitä näe ennenkuin kuin käyttäjä painaa enteriä.

      Näin minä sen ainakin olen ymmärtänyt, korjatkaa joku jos olen väärässä.

      Ongelman voit kiertää esimerkiksi luomalla pienen syöttöikkunan ja kuuntelemalla näppäinpainalluksia, mikä ei tosin hirveästi lohduta, jos sulla ei ole graafista ympäristöä käytössä.. mutta katso Googlesta lisätietoja, esim. hakusanoilla "java unbuffered input stream"

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Veroaste on Suomessa viitisen prosenttiyksikköä liian matala

      Veropohjaa on rapautettu käytännössä koko kulunut vuosituhat, jonka vuoksi valtion menoja on jouduttu rahoittamaan velka
      Maailman menoa
      67
      2395
    2. Tiedän satavarmasti ettet tule koskaan

      Uskaltamaan mitään. Ei me tulla edes näkemään koskaan.
      Ikävä
      66
      1377
    3. Kyläkauppias ajoi kännissä töistä kotiin

      Ei edes kallis auto estä humalassa ajamista, vaikka luulisi alkolukko olevan sellaisessa jo vakiovarusteena. https://ww
      Maailman menoa
      73
      1167
    4. EU komissio - EU-elpymisrahoja voidaan käyttää TILAPÄISESTI väärin!

      Espanja ohjasi miljardeja euroja – Nyt EU-komissio teki yllättävän paljastuksen Skandaaliksi noussut Espanjan EU-rahoje
      Maailman menoa
      4
      1107
    5. Miks me oikein

      Rakastuttiin vaikka kaikki on mahdotonta?
      Ikävä
      78
      832
    6. Kiitos upeasta palvelusta kukkamyyjä

      Kiitos sinulle upea kaunis kukkamyyjä Kuhmon torilla 🌹 Upea iloinen asenteesi ja kaunis hymysi pelasti päiväni ❤️ Jäi
      Kuhmo
      19
      780
    7. Nainen, mikset lähetä

      miehelle viestiä? Tiedän, että sulla on asiaa ja kysyttävää.
      Ikävä
      43
      668
    8. Ratikka Turkuun

      Ei hyvä. Ja syy on siinä , kukaan ei osaa suunnitella oikeaa reittiä. Pitää huomioide, kiskoja sijaintia ei voi muutta
      Turku
      82
      660
    9. Miehet trikoissaan

      On se kauhian näkköistä, kun miehet tiukossa trikkoissa juoksentelloo ja mulukku paestaa trikkoijjen läpi. Kahtokkee pe
      Suomussalmi
      24
      638
    10. Rakastan sinua

      Yhä.
      Ikävä
      30
      616
    Aihe