Newsgroup: it.comp.java
Titolo: Aiuto per principiante!

Ciao a tutti, mi serve un aiuto per una cosa forse semplice, ma io nn
ci riesco.
Dovrei creare un array avendo come input un file .txt contenente dei
caratteri, esempio
#..@
~..@
~..#
In questo caso dovrei quindi creare un array 4x4 contenente ad esempio
nella posizione (0,0) il carattere # e cosi' via...
Il problema e' che la "mappa" non e' sempre la stessa, e puo' variare,
anche nella dimensione.
Qualche anima buona potrebbe spiegarmi come fare?
Grazie mille!!!! Ciao!



non puoi fare una prima lettura del file per avere tutte le info che ti
servono e per controllare che i caratteri ci siano tutti?
a quel punto e' facile creare gli array e mettere dentro i valori.
in alternativa se conosci la dimensione massima della mappa puoi creare
degli array di questa dimensione e lasciarli in parte vuoti quando la
mappa e' piu' piccola.
ciao

 ciao
Grazie per la risposta tempestiva!
Purtroppo non c'e' una dimensione massima, ma il mio problema non e'
tanto nel crealre la funzione, ma nel dare come input questo file di
tipo text...
Il file puo' variare, non e' sempre lo stesso, come faccio a far creare
un array partendo da un file di cui non conosco nemmeno il nome???
Se riesco a prendere questo file come input dopo penso non sia
complicatissimo ricavarne le dimensioni e quindi successivamente
inserire i vari caratteri che saranno di tipo String, ma il problema mi
nasce proprio dall'inizio, ovvero, come vede il compilatore java questi
file .txt?

 
il nome deve essere noto se vuoi inserirlo nel codice ...
se non lo e' come dici tu, allora in fase di esecuzione il programma
lo deve chiedere e tu devi darlo.
nel caso in cui tu volessi un processo completamente automatico la cosa si
fa piu' complicata e non sono in grado di aiutarti.
ciao

 ciao
Va be, allora ammettiamo che il nome del file text sia mappa1.text
Nel codice dovro' scrivere:
import java.util.ArrayList;
public class ScegliTerreno
{
	//costruttori
	public ScegliTerreno (..)
Che cos'e' questo file? Un oggetto? una stringa? Non ci sto capendo piu
niente!
Come faccio a far leggere questi caratteri contenuti per far in modo
che siano inseriti in un nuovo array bidimensionale del tipo
String mappa [] [] = new String [4] [4]   ?
(ovviamente le righe e le colonne dovranno essere calcolate dal file
txt)

 Che cos'e' questo file?
Inizierei da questo:
http://java.sun.com/docs/books/tutorial/essential/io/filestreams.html
e continuerei con questo (capitolo 12)....
http://www.mindviewinc.com/downloads/TIJ-3rd-edition4.0.zip

pio...@inwind.it
 ha scritto:

Ti ringrazio... ma qualcosa in italiano non esiste??? Se sono venuto
qui e' proprio perche' l'inglese non lo conosco molto bene... va be, se
qualcuno sa spiegarmi come fare ok, se no non importa, grazie mille lo
stesso! Ciao!

 stesso! Ciao!
Cerca su 
www.mokabyte.it
 ma, IMHO se non entri nell'ordine di idee che
DEVI leggere in inglese (almeno le API) avrai grosse difficoltà

Il fatto e' questo, io questa matrice o array ce l'ho gia', in file
txt.
Volevo sapere se c'era qualche comando veloce per creare direttamente
l'array con questi caratteri gia' salvati!


Un comando solo no, pero' in una decina di righe di codice dovresti 
riuscire a salvare il tutto in un'array di array (ArrayList).
-- 
Giambo - Occhio al filtro antispam _e_ alla whitelist !

 Giambo - Occhio al filtro antispam _e_ alla whitelist !
E non saresti cosi' gentile da dirmi come???
Magari anche in privato!!!
O almeno qualche consiglio su come fare, come posso sapere le
dimensioni di un'array che non e' un'array (visto che e' solo un file
di testo)?
Scusa ma non sono ancora molto esperto, magari sto dicendo delle grandi
cavolate!
Grazie mille!

 > riuscire a salvare il tutto in un'array di array (ArrayList).
Se ti pago? ...solo che sono a corto ultimamente... in natura e' lo
stesso?

 di testo)?
Non ti serve sapere le dimensioni, ArrayList cresce dinamicamente.
In codice piu' o meno:
   BufferedReader r = new BufferedReader(new FileReader("myFile.txt"));
   ArrayList result = new ArrayList();
   String textLine = r.readLine();
   while (textLine != null) {
     ArrayList line = new ArrayList();
     for (int i = 0; i < textLine.length(); i++) {
       line.add(new Character(textLine.charAt(i)));
     }
     result.add(line);
     textLine = r.readLine();
   }
Ovviamente al posto di Character puoi inserire anche degli oggetti di 
tipo String.


Giambo ha scritto:

Veramente gentile!!!!!  Quindi il pagamento in natura ti va bene
suppongo!! :)
Thanks!!!

>    BufferedReader r = new BufferedReader(new FileReader("myFile.txt"));
Domanda stupida, perche'  mi da errore su (new
FileReader("myFile.txt"))? Quello dovrebbe essere il parametro di new
BufferedReader giusto? Pero' nn me lo accetta...
Ho importato il pacchetto java.io.*   , serve qualcos'altro?

 FileReader("myFile.txt"))? 
Che tipo di errore ?
Ah, rileggendo il tuo messaggio originale, credo che la mia soluzione 
non sia al 100% come richiesto da te.


 non sia al 100% come richiesto da te.
Tanto non riusciro' mai a finire per la fine di giugno...
Qualcuno ha voglia di farlo? bastano 50euro?
Se qualcuno e' interessato gli mando il progetto, non scherzo!!!

Cmq l'errore e': Unhandled exception type FileNotFoundException
Mah... nn capisco perche' non possono fare un java in italiano!

 Mah... nn capisco perche' non possono fare un java in italiano!
Perche' sarebbe -perdonatemi il francesisimo- una stronzata.
