ho una classe (col main) che "gestisce", se cosě si puň dire :-), il nome e
gli stipendi degli impiegati; il programma mi chiede di inserire il nome
dell'impiegato e lo mette in un array; il numero delle volte č determinato
dall'utente stesso in quanto gli viene chiesto dal programma quanti
"impiegati" bisogna inserire; creato l'array di x elementi, vorrei copiarlo,
ma quando arriva a quella linea di codice e solleva un'eccezione del tipo
"ArrayOutOfBoundsException", perchč?
Se serve posto il codice!
Grazie a tutti!
Ciao!
Buona Giornata :-)
...continuo a pensarci ma....nulla;
ho pensato ad un modo (spero giusto): una volta creato l'array con un metodo
estraggo la stringa in ogni sua posizione e inserisco il tutto in un altra
stringa; quest'ultima stringa poi la scrivo su file:
il codice potrebbe essere questo, ma il compilatore mi dice:
1) illegal start of expression (public...), perchč?
public string toString(String name) {
do {
int i = 0;
String temp = "";
name = EmpName[i];
String temp += name;
i++;
}
while(i<totalData);
Grazie!
Ciao!
public String ... non public string ... per l'altro errore, prova a postare
il codice, avrai quasi sicuramente fatto qualche errore con gli indici
dell'array.
ciao, Gianluca
Si, infatti dopo l'ho corretto, perň mi da ancora lo stesso errore...illegal
start of expression :-(
Boh.... :-(
Grazie!
Ciao!
Questo è il codice:
import java.io.*;
public class Employee {
public static void main(String[] args) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Il programma provvederà ad inserire i dati in un
file");
System.out.println("Inserisci il nome del file");
String fileName = in.readLine();
FileWriter writer = new FileWriter(fileName);
PrintWriter out = new PrintWriter(writer);
System.out.println("Inserisci il numero complessivo di dati da
inserire");
int totalData = Integer.parseInt(in.readLine());
String[] EmpName = new String[totalData];
Double[] EmpSalary = new Double[totalData];
int i = 0;
do {
System.out.println("Inserisci il nome dell'impiegato");
String name = in.readLine();
name = EmpName[i];
i++;
}
while(i<totalData);
public String toString(String name) {
do {
int k = 0;
String temp = "";
name = EmpName[k];
String temp += name;
i++;
}
while(k<totalData);
out.println(temp);
writer.close();
}
}
}
Grazie!
Ciao!
> public static void main(String[] args) throws IOException {
>
> BufferedReader in = new BufferedReader(new
InputStreamReader(System.in));
>
> System.out.println("Il programma provvederà ad inserire i dati in un
> file");
> System.out.println("Inserisci il nome del file");
> String fileName = in.readLine();
>
> FileWriter writer = new FileWriter(fileName);
> PrintWriter out = new PrintWriter(writer);
>
> System.out.println("Inserisci il numero complessivo di dati da
> inserire");
> int totalData = Integer.parseInt(in.readLine());
>
> String[] EmpName = new String[totalData];
> Double[] EmpSalary = new Double[totalData];
>
> int i = 0;
>
> do {
> System.out.println("Inserisci il nome dell'impiegato");
> String name = in.readLine();
> name = EmpName[i];
> i++;
> }
> while(i<totalData);
>
>
> public String toString(String name) {
Il metodo toString lo stai dichiarando e implementando all'interno del main,
per questo ti da l'errore. Spostalo fuori e controlla le parentesi graffe e
vedrai che va tutto a posto.
ciao Gianluca
Stavo guardando il resto del codice, ho notato che hai dichiarato tutte le
variabili all'intermno del main, riciordati che è buona norma dichiarare
all'interno dei metodi solo variabili che si riferiscono solo a quei metodi,
le variabili globali della classe vanno dichiarate fuori, altrimenti non
sono viosibili agli altri metodi che implementi ...
ciao, Gianluca
Ho provato a dichiararlo fuori dal main ma mi da molti errore in +, perchč
ad esempio non riconsce writer.close(), in quanto "writer" l'ho dichiarato
nel main! :-(((
Grazie!
Ciao!