Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    16

    [JAVA]Eliminare riga da file testo

    Ho un file di testo e all'interno ho svariate righe tutte scritte in un determinato modo.
    Per cancellare , devo poter inserire il numero della riga e una volta premuto ok, la riga viene cancellata.
    L'inserimento del numero della riga l'ho fatto tramite :
    codice:
    BufferedReader in = new BufferedReader( new InputStreamReader(System.in));
    System.out.print("Numero riga: ");
    String riga= (in.readLine());
    Ora, come posso cancellare tutta la seguente riga?
    Grazie

  2. #2
    Utente di HTML.it L'avatar di @DI3GO@
    Registrato dal
    Nov 2008
    Messaggi
    537

    Re: [JAVA]Eliminare riga da file testo

    Rileggi tutto il file e lo trascrivi da qualche altra parte.
    Quando arrivi alla riga incriminata mantieni il contatore, ma non scriverai quella riga e così continui nel processo di lettura e riscrittura.
    Considera che così puoi anche avere una lista di righe da eliminare.
    Nipote: persona incompetente, con le soli doti di "copia/incolla" e la creazione automatica di siti internet ed interfaccie grafiche.Compie lavori apparentemente qualificati e richiesta una modifica sparisce in quatemala con i pochi soldi ottenuti.[...] Fonte la Diegonzelli

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    16
    scusami ma non capisco bene... :master:

  4. #4
    Utente di HTML.it L'avatar di @DI3GO@
    Registrato dal
    Nov 2008
    Messaggi
    537
    Originariamente inviato da F3aR07
    scusami ma non capisco bene... :master:
    Per inserimento del numero di riga intedi che il tuo file sia diventato una cosa simile a
    Codice PHP:
    1 Rileggi tutto il file e lo trascrivi da qualche altra parte.
    2 Quando arrivi alla riga incriminata mantieni il contatorema non scriverai quella riga e così 
    3 continui nel processo di lettura e riscrittura
    .
    4 Considera che così puoi anche avere una lista di righe da eliminare
    Bene.
    Allora tu istanzi uno stream di scrittura su tmp.txt ed uno di lettura sul tuo file.
    leggi riga per riga e sai che il primo token è il numero della tua riga.
    Se combacia con quello che devi cancellare nello stream scrivi tutto ad eccezione di quella riga e se proprio sostituisci il valore con quello della nuova riga...più chiaro?
    Nipote: persona incompetente, con le soli doti di "copia/incolla" e la creazione automatica di siti internet ed interfaccie grafiche.Compie lavori apparentemente qualificati e richiesta una modifica sparisce in quatemala con i pochi soldi ottenuti.[...] Fonte la Diegonzelli

  5. #5
    Ho un file di testo e all'interno ho svariate righe tutte scritte in un determinato modo. Per cancellare , devo poter inserire il numero della riga e una volta premuto ok, la riga viene cancellata. L'inserimento del numero della riga l'ho fatto tramite : codice: BufferedReader in = new BufferedReader( new InputStreamReader(System.in)); System.out.print("Numero riga: "); String riga= (in.readLine()); Ora, come posso cancellare tutta la seguente riga? Grazie
    Ma se invece di scrivere subito il file fai in questo modo?

    1 - i dati prima li immagazzini in un ArrayList (riga per riga tramite input)
    2 - scorri l'arraylist cercando la stringa maledetta
    3 - cancelli l'indice contenente la stringa dall'arraylist
    4 - scrivi il file.


    Se devi leggere i dati da un file invece che dallo standard input il procedimento non cambia:

    1 - i dati prima li immagazzini in un ArrayList (leggendo riga per riga dal file)
    2 - scorri l'arraylist cercando la stringa maledetta
    3 - cancelli l'indice contenente la stringa dall'arraylist
    4 - sovrascrivi il file.

    mi pare la cosa + semplice da fare...poi boh lascio a te la decisione
    We are just...a moment...in time...

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.