OLa!
Fiz um methodo para reescrever um arquivo txt, mas gostaria que as informaçoes fossem regravadas e nao adicionadas.
Arquivo antes:
C:\Users\Veronica\Desktop\saudade\uva.jpg<>AMOR<>
C:\Users\Veronica\Desktop\saudade\abraco2.jpg<>BANANA<>
C:\Users\Veronica\Desktop\saudade\saudade.jpg<>UVA<>
C:\Users\Veronica\Desktop\saudade\abraco.jpg<>BANANA<>
Arquivo depois:
C:\Users\Veronica\Desktop\saudade\uva.jpg<>AMOR<>
C:\Users\Veronica\Desktop\saudade\saudade.jpg<>UVA<>
C:\Users\Veronica\Desktop\saudade\abraco.jpg<>BANANA<>
Mas a resposta que tenho eh esta:
C:\Users\Veronica\Desktop\saudade\uva.jpg<>AMOR<>
C:\Users\Veronica\Desktop\saudade\abraco2.jpg<>BANANA<>
C:\Users\Veronica\Desktop\saudade\saudade.jpg<>UVA<>
C:\Users\Veronica\Desktop\saudade\abraco.jpg<>BANANA<>
C:\Users\Veronica\Desktop\saudade\uva.jpg<>AMOR<>
C:\Users\Veronica\Desktop\saudade\saudade.jpg<>UVA<>
C:\Users\Veronica\Desktop\saudade\abraco.jpg<>BANANA<>
Ja coloquei um FALSE no parametro do FileWrite, mas ai o arquivo vem VAZIO.
Onde estou errando???
public void rename(String novoNome) throws IOException {
arquivo = new File(adresse);
//File dir = new File(adresse);
jTextField3.setText(novoNome);
novoNome = jTextField3.getText().toLowerCase();
String[] sp = arquivo.getName().split("\\.");
//FileReader fr = new FileReader("/Users/Veronica/workspacenetbeans/Visionneuse/mots.txt");
fr = new FileReader("/Users/Veronica/workspacenetbeans/Visionneuse/mots.txt");
//FileWriter gravar = new FileWriter(new File("/Users/Veronica/workspacenetbeans/Visionneuse/mots.txt"),true);
//BufferedWriter gravar = new BufferedWriter(new FileWriter("/Users/Veronica/workspacenetbeans/Visionneuse/mots.txt", true));
gravar = new BufferedWriter(new FileWriter("/Users/Veronica/workspacenetbeans/Visionneuse/mots.txt", true));
//BufferedReader br = new BufferedReader(fr);
br = new BufferedReader(fr);
String temp;
List<String> lista2 = new ArrayList<String>();
while ((temp = br.readLine()) != null) {
//Aqui gera a sua "lista". No caso, imprimi cada linha na tela.
System.out.println("linhaa TEMP=" + temp);
if (!temp.contains(jTextField2.getText())) {
lista2.add(temp);
System.out.println("*** NAO ALTERADO ***");
}
}
String qqqq = lista2.toString();
System.out.println("***LISTA = " + qqqq);
gravar.write(qqqq.replace(",", "\n").replace(" ", "").replace("[", "").replace("]", ""));
/*Duplicite l = new Duplicite("/Users/Veronica/workspacenetbeans/Visionneuse/mots.txt");
l.lerTexto();
System.out.println("CONCLUIDO...");*/
gravar.close();
if (!jTextField3.getText().isEmpty()) {
if (arquivo.isFile() == true) {
arquivo.renameTo(new File(arquivo.getParent() + "\\" + novoNome + "." + sp[1]));
String nouveau1 = arquivo.getParent() + "\\" + novoNome + "." + sp[1].toString();
jTextField2.setText(nouveau1);
//jTextField2.setText(dir.getAbsolutePath());
} else {
arquivo.renameTo(new File(arquivo.getParent() + "\\" + novoNome));
}
} else {
jLabel5.setText("Informar Novo Nome");
}
setChanged();
notifyObservers();
}
OBRIGADA!