|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Aug 2003
Città: verona
Messaggi: 541
|
[JAVA] utilizzare BufferedReader
Salve a tutti, sto cercando di utilizzare BufferedReader per creare un buffer e prelevare l'input da tastiera per poi utilizzarlo, ho scritto queste poche linee di codice ma non capisco dove sbaglio, non mi riconosce il metodo readLine() usato su un oggetto di tipo BufferedReader, eppure nelle specifiche della classe il metodo esiste..sapete dirmi dove sbaglio? grazie mille
import java.io.InputStreamReader; import java.io.BufferedReader ; import java.io.IOException; class HTMLPage{ public static void main (String args[]){ InputStreamReader reader = new InputStreamReader (System.in); BufferedReader input = new BufferedReader (reader); String path = new String(input.readLine("Inserisci il percorso: ")); } } L'errore è cannot find symbol, method readLine, class java.io.BufferedReader
__________________
CASE: Cooler Master Stacker 831 Silver MOBO: Asus Maximus Formula CPU: Intel Q6600@2,4ghz RAM: 2x 1GB Corsair XMS2 pc2-8500@1066mhz + 2x2GB Corsair XMS2 pc2-8500@1066mhzVGA: ATI Sapphire RADEON 5830 1GB GDDR5 HD: 2 x WD Caviar SE16 500GB Raid 0 |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Aug 2003
Città: verona
Messaggi: 541
|
ho "risolto" anche se in realtà non ho capito la connessione logica tra le due cose, inserendo il codice in un try catch, così:
Questo in che modo ha cambiato la situazione? ora l'errore è svanito..chiedo lumi try { InputStreamReader reader = new InputStreamReader (System.in); BufferedReader input = new BufferedReader (reader); String path = new String(input.readLine()); / } catch (IOException e){ System.out.println("Errore"); }
__________________
CASE: Cooler Master Stacker 831 Silver MOBO: Asus Maximus Formula CPU: Intel Q6600@2,4ghz RAM: 2x 1GB Corsair XMS2 pc2-8500@1066mhz + 2x2GB Corsair XMS2 pc2-8500@1066mhzVGA: ATI Sapphire RADEON 5830 1GB GDDR5 HD: 2 x WD Caviar SE16 500GB Raid 0 |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Aug 2003
Città: verona
Messaggi: 541
|
maledizione non capisco..ora l'errore è tornato.non capisco da cosa dipenda sapete spiegarmi perchè non riconosce il readLine() usato su BufferedReader ?...
__________________
CASE: Cooler Master Stacker 831 Silver MOBO: Asus Maximus Formula CPU: Intel Q6600@2,4ghz RAM: 2x 1GB Corsair XMS2 pc2-8500@1066mhz + 2x2GB Corsair XMS2 pc2-8500@1066mhzVGA: ATI Sapphire RADEON 5830 1GB GDDR5 HD: 2 x WD Caviar SE16 500GB Raid 0 |
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Aug 2007
Città: caserta
Messaggi: 78
|
io l'ho compilato e nn mi da errore.....
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Aug 2003
Città: verona
Messaggi: 541
|
intendi la prima delle due versioni??...che odio...
__________________
CASE: Cooler Master Stacker 831 Silver MOBO: Asus Maximus Formula CPU: Intel Q6600@2,4ghz RAM: 2x 1GB Corsair XMS2 pc2-8500@1066mhz + 2x2GB Corsair XMS2 pc2-8500@1066mhzVGA: ATI Sapphire RADEON 5830 1GB GDDR5 HD: 2 x WD Caviar SE16 500GB Raid 0 |
|
|
|
|
|
#6 |
|
Member
Iscritto dal: Aug 2007
Città: caserta
Messaggi: 78
|
no la seconda... quella con il try...
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Aug 2003
Città: verona
Messaggi: 541
|
ah ok no la seconda va pure a me..e non ho capito perchè..:P
__________________
CASE: Cooler Master Stacker 831 Silver MOBO: Asus Maximus Formula CPU: Intel Q6600@2,4ghz RAM: 2x 1GB Corsair XMS2 pc2-8500@1066mhz + 2x2GB Corsair XMS2 pc2-8500@1066mhzVGA: ATI Sapphire RADEON 5830 1GB GDDR5 HD: 2 x WD Caviar SE16 500GB Raid 0 |
|
|
|
|
|
#8 |
|
Member
Iscritto dal: Aug 2007
Città: caserta
Messaggi: 78
|
hai ragione.. la prima da errore... kmq.. il metodo readLine() genera una eccezione quindi deve essere inserito all'interno del try.. però l'errore nn mi sembra collegato con il fatto che nn hai gestito l'eccezione... boh...
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Oct 2006
Messaggi: 1105
|
la seconda compila perché gestisce le eccezioni di tipo checked lanciate dal metodo readLine() e perché invoca correttamente tale metodo.
la prima non compila perché readLine non ha parametri, mentre tu gli passi una stringa, per cui ti dice che non riesce a trovare un metodo readLine che accetti una stringa come parametro |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Aug 2003
Città: verona
Messaggi: 541
|
uhm...quindi devo utilizzare per forza try catch se utilizzo un metodo che prevede eccezioni? scusate ma programmo in java da poco....per la faccenda dell'argomento di readLine è stato un errore idiota ma prima utilizzavo un readLine di un altro package che invece accettava una stringa come argomento...grazie mille ora mi è più chiaro!
__________________
CASE: Cooler Master Stacker 831 Silver MOBO: Asus Maximus Formula CPU: Intel Q6600@2,4ghz RAM: 2x 1GB Corsair XMS2 pc2-8500@1066mhz + 2x2GB Corsair XMS2 pc2-8500@1066mhzVGA: ATI Sapphire RADEON 5830 1GB GDDR5 HD: 2 x WD Caviar SE16 500GB Raid 0 |
|
|
|
|
|
#11 |
|
Member
Iscritto dal: Aug 2007
Città: caserta
Messaggi: 78
|
giusto... che stupido...
|
|
|
|
|
|
#12 |
|
Member
Iscritto dal: Aug 2007
Città: caserta
Messaggi: 78
|
si... se un metodo genera una eccezzione quest'ultima deve essere gestista.. altrimenti il compilatore da errore...
|
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: Aug 2003
Città: verona
Messaggi: 541
|
ok grazie mille
__________________
CASE: Cooler Master Stacker 831 Silver MOBO: Asus Maximus Formula CPU: Intel Q6600@2,4ghz RAM: 2x 1GB Corsair XMS2 pc2-8500@1066mhz + 2x2GB Corsair XMS2 pc2-8500@1066mhzVGA: ATI Sapphire RADEON 5830 1GB GDDR5 HD: 2 x WD Caviar SE16 500GB Raid 0 |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:00.



















