|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Milano
Messaggi: 1078
|
Java: copiare un txt da riga di comando
Ciao a tutti, ho creato un programma per la copia dei file (ad esempio txt) e funziona, ora vorrei modificarlo in modo tale da mettere il nome del file sorgente e il nome della copia direttamente sulla linea di comando:
Es: java copia grafico.txt copiagrafico.txt Copia quindi grafico.txt e crea una copia chiamata copiagrafico. Sò che bisognava modificare l'array di stringhe inserendo valore args [0] per il file sorgente e args [1] per la copia, ma non funziona esce un errore: ArrayIndexOutOfBoundsExcemption 1. public static void main(String [] args) <---- Come faccio?Vorrei postare il programma ma utilizzo delle librerie create dal professore....
__________________
CPU: AMD Phenom II X4 965 C3 Motherboard: Asrock 980DE3/U3S3 R2.0 Ram: G-Skill F3 CL7 4GB DDR3 1333Mhz Alimentatore: Corsair VX550w Hard-Disk: Samsung SSD EVO 860 500GB - WD Caviar Black 1 TB Ultima modifica di Negative_creep : 14-12-2006 alle 15:47. |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Comunque posta il codice che vediamo ...
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Milano
Messaggi: 1078
|
ho fatto come dici tu....e dà:
0 come risultato.
__________________
CPU: AMD Phenom II X4 965 C3 Motherboard: Asrock 980DE3/U3S3 R2.0 Ram: G-Skill F3 CL7 4GB DDR3 1333Mhz Alimentatore: Corsair VX550w Hard-Disk: Samsung SSD EVO 860 500GB - WD Caviar Black 1 TB |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Codice:
public static void main (String[] args)
{
if (args.length == 2)
{
String srcFile = args[0];
String dstFile = args[1];
// .... tutto il resto che devi fare ....
}
}
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) Ultima modifica di andbin : 14-12-2006 alle 17:12. |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Milano
Messaggi: 1078
|
Grande!!!!Funziona! Però ti prego spiega come mai inizialmente metti la condizione if (args.length == 2) se sappiamo che la lunghezza dell'array String args è 0..
Grazie di nuovo sopratto per la tua velocità nella risposta!
__________________
CPU: AMD Phenom II X4 965 C3 Motherboard: Asrock 980DE3/U3S3 R2.0 Ram: G-Skill F3 CL7 4GB DDR3 1333Mhz Alimentatore: Corsair VX550w Hard-Disk: Samsung SSD EVO 860 500GB - WD Caviar Black 1 TB |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Milano
Messaggi: 1078
|
anzi che scemo siccome è falsa eseguirà sempre il codice quindi tolgo la condizione....infatti funziona comunque!
__________________
CPU: AMD Phenom II X4 965 C3 Motherboard: Asrock 980DE3/U3S3 R2.0 Ram: G-Skill F3 CL7 4GB DDR3 1333Mhz Alimentatore: Corsair VX550w Hard-Disk: Samsung SSD EVO 860 500GB - WD Caviar Black 1 TB |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Il test del numero di argomenti devi farlo .... altrimenti se viene passato al programma un numero inferiore di argomenti (uno o nessuno), allora args[1] o anche args[0] non esistono!!! Pertanto ti beccheresti una eccezione ArrayIndexOutOfBoundsException.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Milano
Messaggi: 1078
|
Ok....Grazie mille!
Ahh ultima cosa altrimenti non capisco bene, se l'array di string args ha dimensione 0 come mai possiamo assegnare la posizione 0 e 1 senza che dia errore? Sò che è stupida però sono agli inizi...
__________________
CPU: AMD Phenom II X4 965 C3 Motherboard: Asrock 980DE3/U3S3 R2.0 Ram: G-Skill F3 CL7 4GB DDR3 1333Mhz Alimentatore: Corsair VX550w Hard-Disk: Samsung SSD EVO 860 500GB - WD Caviar Black 1 TB Ultima modifica di Negative_creep : 14-12-2006 alle 17:08. |
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Se tu lanci un programma Java con: java nomeclasse pippo pluto 123 allora args.length vale 3, args[0] contiene "pippo", args[1] contiene "pluto" e args[2] contiene "123".
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Milano
Messaggi: 1078
|
ok...ora ho capito!
__________________
CPU: AMD Phenom II X4 965 C3 Motherboard: Asrock 980DE3/U3S3 R2.0 Ram: G-Skill F3 CL7 4GB DDR3 1333Mhz Alimentatore: Corsair VX550w Hard-Disk: Samsung SSD EVO 860 500GB - WD Caviar Black 1 TB |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:28.



















