я что-то пропустил ?
аюсь написать файл, который находится на веб-сервере, поэтому я использую:
URL url1 = new URL("ftp://user:pass@ftp.host/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);
}
Этот код перезаписывает существующие данные в текстовом файле. Как я могу это исправить?
Я попробовал много решений здесь, от stackoverflow. Каждый раз, когда я получаю ту же ошибку, говоря, что мне нужно изменитьOutputStream
вString
.
как этот
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());
}
ошибки
Исключение в потоке "AWT-EventQueue-0" java.lang.Error: Неразрешенная проблема компиляции: конструктор FileWriter (OutputStream, логическое значение) не определен
в Connection.initialize (Connection.java:274) в Connection. (Connection.java:131) в Connection $ 1.run (Connection.java:113) в java.awt.event.InvocationEvent.dispatch (Неизвестный источник) в Java. awt.EventQueue.dispatchEventImpl (неизвестный источник) на java.awt.EventQueue.access $ 500 (неизвестный источник) на java.awt.EventQueue $ 3.run (неизвестный источник) на java.awt.EventQueue $ 3.run (неизвестный источник) на java .security.AccessController. .awt.EventDispatchThread. .EventDispatchThread.run (неизвестный источник)
строка 274
FileWriter fw = new FileWriter(out,true);
поэтому мне нужно изменить на String вместо OutputStream