Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    347

    [JAVA - Confronto tra stringhe]

    Buongiorno,
    sto realizzando un metodo che prende un file di tipo txt e una stringa e va a controllare se il contenuto del file è uguale o no alla stringa.
    Quindi ciclo in contenuto del file

    codice:
    while ((str = in.readLine()) != null) { 
    			strIntoFile = strIntoFile +  str;
    		}
    e lo inserisco in una variabile d'appoggio strIntoFile.
    Quando vado a fare il controllo di uguaglianza, purtroppo non mi funziona perchè il mia stringa che viene passata contiene degli "accapo".
    Nel ciclo ho pensato di aggiunger \n ma me li visualizza e non mi crea la nuova linea.
    Qualche suggerimento?
    thanx
    nh

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    347
    risolto:
    System.getProperty("line.separator")

    thanx
    nh

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [JAVA - Confronto tra stringhe]

    Originariamente inviato da newhook
    Nel ciclo ho pensato di aggiunger \n ma me li visualizza e non mi crea la nuova linea.
    Qualche suggerimento?
    Se vuoi avere in memoria il contenuto del file pari pari come caratteri mantenendo qualunque sequenza di newline, allora non usare readLine() ma leggi a "blocchi" di char e buttali in un StringBuffer o StringBuilder (Java 5).
    Che tra l'altro è pure molto più efficiente che usare la concatenazione delle stringhe come stavi facendo.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    347
    approvo StringBuffer

    Ho fatto così
    codice:
    while ((str = in.readLine()) != null) { 
    			strIntoFile.append(str+System.getProperty("line.separator"));
    		}
    dove strIntoFile è StringBuffer
    che dici?
    nh

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da newhook
    codice:
    while ((str = in.readLine()) != null) { 
    			strIntoFile.append(str+System.getProperty("line.separator"));
    		}
    che dici?
    Si ma io però intendevo la lettura a blocchi di char.

    Quello che hai appena fatto potrebbe andare se tu sai a priori che la stringa che hai da confrontare con il file contiene esattamente sequenze di newline della piattaforma. E quindi formando il buffer dal file metti i newline uguali a quelli che ti aspetti.
    Io comunque farei 2 append, per evitare ancora una volta la concatenazione delle stringhe.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    347
    ok capito, thanx

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 © 2026 vBulletin Solutions, Inc. All rights reserved.