Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [Java] Leggere file di testo

    Salve gente, ho bisogno di un paio di dritte.
    In java devo leggere un file di testo (questo file è formato da una lista di parole una sotto l'altra). Queste parole rappresentano nomi di file.
    Poi devo confrontare la lista presente nel file di testo con il contenuto di una directory.

    Io ho scritto il seguente medoto per leggere il file txt
    codice:
    public static void readFileTxt() {
    	    String path = "C://.......//listaUtenti.txt";
    	    char[] in = new char[1000];
    	    int size = 0;
    	    try {
    	    	File file = new File(path);
    	    	FileReader fr = new FileReader(file);
    	    	BufferedReader br = new BufferedReader(fr);
    	    	size = br.read(in);
    
    	    	System.out.print("Il contenuto del file è il seguente:\n");
    
    	    	for(int i=0; i<size; i++){
    	    		System.out.println(in[i]);
    	    	}	    	
    
    	    	br.close();
    	    } catch(IOException e) {
    	    	e.printStackTrace();
    	    }
    	  }
    L'ideale, secondo me, sarebbe memorizzare in un'array l'intera lista contenuta nel file txt così che per ogni elemento di questo array scorro l'intera lista di file della directory in modo da verificare la presenza/assenza del file.

    Consigli?
    Del codice che ho postato sopra, mi puzza il vettore di char perchè devo farlo enorme per fargli contenere le 33 parole che formano il file txt.

  2. #2
    Forse uno dei problemi è che leggo caratteri e non stringhe....

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    usa un array di stringhe e readline di bufferedreader
    RTFM Read That F*** Manual!!!

  4. #4
    Ho risolto così:
    codice:
    public static void readFileTxt() {
    	    String path = "C://.....//listaUtenti.txt";
    	    
    	    try {
    	    	File file = new File(path);
    	    	FileReader fr = new FileReader(file);
    	    	BufferedReader br = new BufferedReader(fr);
    	    	ArrayList<String> blah = new ArrayList<String>();
    	    	String s = br.readLine();
    	    	
    	    	while (s!=null){
    	    		blah.add(s);
    	    		s = br.readLine();
    	    	}
    	    	
    	    	String[] arrayDiStringhe = blah.toArray(new String[0]);
    	    	
    	    	System.out.print("Il contenuto del file è il seguente: \n");
    	    	for (int i=0; i<arrayDiStringhe.length; i++)
    	    		System.out.println(arrayDiStringhe[i]);
    
    	    	br.close();
    	    } catch(IOException e) {
    	    	e.printStackTrace();
    	    }
    	  }
    Ora devo confrontare il contenuto di ogni elemento dell'arrayDi Stringhe con il contenuto di file in una directory....

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.