Visualizzazione dei risultati da 1 a 9 su 9

Visualizzazione discussione

  1. #8
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    755
    Sinceramente la tua ultima implementazione non mi sembra poi così efficiente!
    Innanzitutto perchè effettui una scrittura su file per ogni numero , poi mi sembra che il tuo procedimento sia un po' troppo elaborato.
    Per i problemi di sopra potresti risolvere inserendo ogni numero in un StringBuilder (dopo ogni numero ci metti un "a capo" , tranne magari per l'ultimo, per imitare lo scrivi.println di ogni numero) e scrivi in un unica volta l'intero file con sb.toString ()
    La procedura da me prima postata può essere migliorata , come tu avevi fatto notare , nel seguente modo:

    codice:
    BufferedReader br = new BufferedReader (new InputStreamReader (new FileInputStream ("file.txt")));
    String s;
    String s1 = "";
    int j;
    while ((s=br.readLine ())!=null) {
       s1+=s.replaceAll (" ","");
       while ((j=s1.indexOf (",")) < s1.length () /*&& j>= 0*/ && (j+5) <= s1.length ()) {
          System.out.println (s1.substring (0 , j + 5));
          s1 = s1.substring (j + 5);
       }
    }
    Io nel mio esempio procedo alla stampa su console , per il tuo caso (scrittura su file) dovresti sostituire i miei println (stringa) in sb.append (stringa + "\n") , il "\n" se non vuoi un "a capo finale lo levi con un controllo apposito , e poi procedi con uno scrivi.println (sb.toString ()) finale..

    Ps. il codice non l'ho rigorosamente testato e controllato causa rincoglionimento da studio universitario profondo quindi stai attento a eventuali errori

    Ultima modifica di zipangulu; 10-11-2013 a 20:23

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.