Como gravar em um arquivo sem substituir os dados? [fechadas
Estou tentando escrever um arquivo localizado em um servidor da web, então estou usando:
URL url1 = new URL("ftp://user:[email protected]/public_html/users.txt");
URLConnection conn = url1.openConnection();
conn.setDoOutput(true);
OutputStream out = conn.getOutputStream();
try (Writer w = new OutputStreamWriter(out, "UTF-8")) {
w.write(ipAddress+ hostname);
}
Este código substitui os dados existentes no arquivo de texto. Como posso corrigir isso?
Tentei muitas soluções aqui, no stackoverflow. Toda vez que eu recebo o mesmo erro, dizendo que preciso alterarOutputStream
paraString
.
como est
try
{
FileWriter fw = new FileWriter(out,true); //the true will append the new data
fw.write("add a line\n");//appends the string to the file
fw.close();
}
catch(IOException ioe)
{
System.err.println("IOException: " + ioe.getMessage());
}
erros
Exceção no segmento "AWT-EventQueue-0" java.lang.Error: Problema de compilação não resolvido: O construtor FileWriter (OutputStream, boolean) é indefinido
at Connection.initialize (Connection.java:274) em Connection. (Connection.java:131) em Connection $ 1.run (Connection.java:113) em java.awt.event.InvocationEvent.dispatch (fonte desconhecida) em java .awt.EventQueue.dispatchEventImpl (fonte desconhecida) em java.awt.EventQueue.access $ 500 (fonte desconhecida) em java.awt.EventQueue $ 3.run (fonte desconhecida) em java.awt.EventQueue $ 3.run (fonte desconhecida) em java.security.AccessController.doPrivileged (método nativo) em java.security.ProtectionDomain $ JavaSecurityAccessImpl.doIntersectionPrivilege (fonte desconhecida) em java.awt.EventQueue.dispatchEvent (fonte desconhecida) em java.awt.EventDispatchThread.java.security. java.awt.EventDispatchThread.pumpEventsForFilter (fonte desconhecida) em java.awt.EventDispatchThread.pumpEventsForHierarchy (fonte desconhecida) em java.awt.EventDispatchThread.pumpEvents (fonte desconhecida) em java.awt.EventDispatchThread. awt.EventDispatchThread.run (fonte desconhecida)
line 274 é
FileWriter fw = new FileWriter(out,true);
ntão, eu preciso mudar para String em vez de OutputStream