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

    Problema lettura da file

    Buonasera a tutti,
    Mi si sta verificando un problema che proprio non riesco a spiegarmi:

    Ho un file excel con 10 righe e 5 colonne di cui 2 righe sono vuote (la 7 e la 8), lo esporto in txt delimitato da tabulazione perchè ho intenzione di leggerlo e riscriverne un altro che NON contenga nessuna riga vuota.
    Ho scritto questo codice per verificare se le linee vuote venivano identificate alla lettura del file:
    codice:
    try {
    		FileReader f = new FileReader(address); 
    		BufferedReader ln = new BufferedReader(f);  
    
    		String linea = ln.readLine();
    		while(linea != null) {
    			verifica = linea;
    			if (verifica.equals(" ")) System.out.println("Vuoto");
    			linea = ln.readLine();
    				}
    				
    			}
    			
    			catch (IOException exception) {
    	   			   System.out.println("ERRORE: "+exception);
    	   		    }
    Ottengo che non mi stampa nulla! eppure le linee vuote ci sono...
    Perchè mai accade questo?

    Grazie

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Re: Problema lettura da file

    Perchè il controllo che hai fatto non controlla se una riga è vuota, ma se una riga contiene uno spazio: sono cose ben diverse.

    codice:
    String linea = ...;
    if ( linea.equals("") ) {
       // La riga è vuota
    }
    
    if ( linea.equals(" ") ) {
       // La riga contiene uno spazio e non è vuota
    }
    Inoltre, il mio consiglio (se hai linee contenenti spazi che per te sono superflui) è quello di utilizzare un trim:

    codice:
    if ( linea.trim().equals("") ) {
       // La riga è (considerata) vuota anche se contiene spazi
    }
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

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.