Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883

    (java) Scrivere su un file di testo

    Ho un'applicazione swing dove si può scrivere del testo.
    In questo programma c'è l'opzione di salva stesto su file
    Per salvare il testo uso questo codice:

    String doc = editor.getText();//prendo tutto il testo dal programma swing
    int docLength = doc.length();
    try {
    FileWriter fw = new FileWriter(fileAbsPath);
    fw.write(doc, 0, docLength);
    fw.close();
    } catch (IOException ioe) {
    JOptionPane.showMessageDialog(null, ioe);
    }

    Funziona tutto però vorrei fare una cosa differente, quando salvo ogni volta che c'è una riga che va a capo vorrei aggiungerci il carattere di cancelletto #

    Esempio:
    Se il testo nel programma è

    1° riga: bla bla bla
    2° riga: bla bla
    3° riga: bla

    attualmente nel file scrive:

    1° riga: bla bla bla
    2° riga: bla bla
    3° riga: bla

    io vorrei che scrivesse

    1° riga: bla bla bla#
    2° riga: bla bla#
    3° riga: bla#

    Come posso fare?

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    risolto

    String doc = editor.getText();
    int docLength = doc.length();
    try {
    FileWriter fw = new FileWriter(fileAbsPath);
    //fw.write(doc, 0, docLength);
    PrintWriter out
    = new PrintWriter(new BufferedWriter(fw));
    StringTokenizer st = new StringTokenizer(doc, "\n");
    while (st.hasMoreTokens()) {
    out.write(st.nextToken());
    out.write("#");
    }
    ;
    out.close();
    } catch (IOException ioe) {
    JOptionPane.showMessageDialog(null, ioe);
    }

  3. #3
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Ciao, potresti utilizzare uno StringTokenizer mettendo come valore da cercare il capo riga e cioè:

    StringTokenizer st = new StringTokenizer( doc,"\n" );
    String appoggio = "";
    while (st.hasMoreTokens()) {
    appoggio = st.nextToken()+"#";
    int appLength = appoggio.length();
    try {
    FileWriter fw = new FileWriter(fileAbsPath);
    fw.write(appoggio, 0, appLength);
    fw.close();
    } catch (IOException ioe) {
    JOptionPane.showMessageDialog(null, ioe);
    }

    }

    Non l'ho provato ma ad occhio e croce dovrebbe andare ( almeno spero )Ciao
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

  4. #4
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Wow in contemporanea!! Ciao
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

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.