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

    [java] moficare stringhe in più file txt

    Ciao ragazzi

    ho un problema

    ho una cartella con vari file con varie estenzioni .doc . txt . jpg ecc

    devo prendere tutti i file .txt aprirli cercare un stringa ( es pippo ) e cambiarla con un altra (es pluto) e salvare con lo stesso nome

    ho realizzato questo codice ma non mi trova i file

    dove sbaglio?

    codice:
    String files[] = src.list();  	
    	for (String file : files) {                
              try {             	              
                    BufferedReader reader = new BufferedReader(new FileReader(file));
                    String line = "", oldtext = "";
                    while ((line = reader.readLine()) != null) {
                        oldtext += line + "\r\n";
                    }
                    reader.close();
                   
                    // To replace a line in a file
                    String newtext = oldtext.replaceAll(inputString, outputString);
    
                    FileWriter writer = new FileWriter(fileOutput);
                    writer.write(newtext);
                    writer.close();
                } catch (IOException ioe) {
                    ioe.printStackTrace();
                }
     }

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    non ti trova i file? Sei sicuro di passare il percorso giusto? Io avrei creato un FileFilter/FileNameFilter per prendere solo i .txt, qualcosa del genere:

    codice:
    import java.io.*;
    /**
     *
     * @author Andrea
     */
    public class Esercizio09 {
        
        private String basepath;
        private class TXTFileFilter implements FileFilter {
            
            public boolean accept(File file) {
                return (file.getPath().toLowerCase().endsWith(".txt"));
            }
        }
        
        public Esercizio09(String basepath) { 
            this.basepath = basepath;
            File[] files = (new File(basepath)).listFiles(new TXTFileFilter());
            /* Da qui hai la lista dei soli file su cui vuoi lavorare
             * invece di mostrarli come faccio io, passali al metodo
             * che si occupa della lettura e modifica
             */
            for (File f : files) {
                System.out.println(f.getAbsolutePath());
            }
        }
        
        public static void main (String[] args) {
           // percorso che contiene un'accozzaglia di file
            new Esercizio09("C:/Users/Andrea/Desktop/javatest");
        }
        
    }
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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.