Desidero eliminare alcuni contenuti del file utilizzando il programma java come di seguito. È questo il metodo di scrittura da sostituire nello stesso file o dovrebbe essere copiato in un altro file.Modificare il contenuto di un file utilizzando Java
Ma sta eliminando tutto il contenuto del file.
class FileReplace
{
ArrayList<String> lines = new ArrayList<String>();
String line = null;
public void doIt()
{
try
{
File f1 = new File("d:/new folder/t1.htm");
FileReader fr = new FileReader(f1);
BufferedReader br = new BufferedReader(fr);
while (line = br.readLine() != null)
{
if (line.contains("java"))
line = line.replace("java", " ");
lines.add(line);
}
FileWriter fw = new FileWriter(f1);
BufferedWriter out = new BufferedWriter(fw);
out.write(lines.toString());
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
public statc void main(String args[])
{
FileReplace fr = new FileReplace();
fr.doIt();
}
}
penso che dovresti usare il nome solo una volta;) – acostache
1) chiudi il lettore dopo l'uso: 'br.close()'; 2) cosa è 'out' nel tuo codice? 3) qual è il risultato, cosa ti aspettavi? – Andy