【发布时间】:2021-05-24 12:16:10
【问题描述】:
我在保存正在处理的文件时遇到了一个小问题。该程序会保存所有内容,但是当您关闭该程序并再次打开它时,该文件将重置为零并从头开始保留记录。据我了解,这完全是由于打开程序时再次创建了文件。有谁知道如何打开一个已经创建的文件并写入它?
我会附上初始化部分:
void setup() {
size(330, 450);// создаем рабочее окно размером 800х600 точек
surface.setTitle("Передача данных");//подпись вверху экрана
printArray(Serial.list());//выводим активные порты на экран или монитор
port = new Serial(this, Serial.list()[0], 9600);//выбираем порт но ето не точно
//работа с файлами
cp5 = new ControlP5(this);
front = loadFont("TimesNewRomanPS-BoldItalicMT-20.vlw");//подгружаем шрифт
output0 = createWriter("POST1.txt");//создаем файл для логов с поста 1
output1 = createWriter("POST2.txt");// создаем файл длялогов с поста два
//создание списков
cp5 = new ControlP5(this);
p1 = cp5.addDropdownList("Post 1")//выпадающий список для поста 1
.setPosition(100,100);//положение (x,y)
p1.addItem(c11,c11);//пункты выпадающегосписка
p1.addItem(c12,c12);
p1.setColorBackground(color(60));
p1.setColorActive(color(255, 128));
p2 = cp5.addDropdownList("Post 2")//те же шаги но для списка 2
.setPosition(100,150);
p2.addItem(c11,c11);
p2.addItem(c12,c12);
p1.setColorBackground(color(60));
p1.setColorActive(color(255, 128));
//customize(p1);
//customize(p2);
}
下拉列表的点击被处理后写入文件的部分:
void controlEvent(ControlEvent theEvent){
String name = theEvent.getName();
float value = theEvent.getController().getValue();
int i = 0;
if(name.startsWith("Post 1")){
if(value==0.0){
//data = loadStrings("POST1.txt");
println("test code0");
selection.println("test code0" + " " + day()+"."+month()+"."+year()+" "+hour()+":"+minute()+":"+second());
//("POST1.txt");
output0.flush();
//output0.close();
//exit();
}
if(value==1.0){
println("test code1");
output0.println("test code1" + " " + day()+"."+month()+"."+year()+" "+hour()+":"+minute()+":"+second());
output0.flush();
output0.close();
exit();
}
}
}
【问题讨论】:
标签: file save processing