Newsgroup: it.comp.java
Titolo: Scrivere array su file

Ciao,
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 :-)

 Ciao,
...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!

 ha scritto nel messaggio
news:avug1t$ja22m$1...@ID-147723.news.dfncis.de...

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

 gli indici dell'array.
Si, infatti dopo l'ho corretto, perň mi da ancora lo stesso errore...illegal
start of expression :-(
Boh.... :-(
Grazie!
Ciao!

 postare il codice, avrai quasi sicuramente fatto qualche errore con
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 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

 parentesi graffe e vedrai che va tutto a posto.
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!