Вы должны использовать FileWriter (чистый Java (6 или 7)), а не PrintWriter от обработки API. FileWriter имеет второй аргумент в своем конструкторе, который позволяет вам установить логическое значение, чтобы решить, добавите ли вы выход или перезапишите его (true для добавления, false - для перезаписи).
документация находится здесь: http://docs.oracle.com/javase/7/docs/api/java/io/FileWriter.html Примечание Вы можете также использовать BufferedWriter, и передать его FileWriter в конструкторе, если это помогает на всех (но я не думаю, что это необходимо в вашем случае).
Пример:
try {
FileWriter output = new FileWriter("example.csv",true); //the true will append the new data
output.println("a;b;c;this;that ");
output.flush();
output.close();
}
catch(IOException e) {
println("It Broke :/");
e.printStackTrace();
}
Как и выше, это будет работать в PDE - и в Android, - но если вы потребность использовать его в PJS, PyProcessing и т.д., то вам придется взломать его
- динамически читать длину существующего файла и сохранить его в ArrayList
- добавить новую строку в ArrayList
- использовать индекс ArrayList для управления, где в файле вы сейчас писать
Если вы хотите предложить аксессуар к PrintWriter API (который, вероятно, основан от FileWriter), вы можете сделать это на странице Issue Processing в на GitHub:
https://github.com/processing/processing/issues?state=open
Обратите внимание, что это больше не обработка, а теперь простая Java с встроенной обработкой (т. Е. Это не будет работать в средах, которые могут запускать код обработки, t знать что-нибудь о Java) –
Обработка основана на Java, этот код отлично работает в среде обработки IDE! – Pwdr
Да, и он будет разбит при компиляции Processing.js (или других компиляторов обработки, которые генерируют код для не-в-JVM), который имеет полную поддержку обработки, но не работает в JVM, и поэтому имеет не знаю, что такое Java =) –