File 处理中保存到文件的问题

File 处理中保存到文件的问题,file,save,processing,File,Save,Processing,我在处理过程中保存文件时遇到了一个小问题。程序会保存所有内容,但当您关闭程序并再次打开它时,文件将重置为零,并从一开始就保留记录。据我所知,这都是由于在打开程序时再次创建了文件。有人知道如何打开已经创建的文件并写入吗 我将附加带有初始化的零件: void setup(){ 尺寸(330,450);// 表面。设置标题(“Пааааааааа”)// printArray(Serial.list());// 端口=新序列(此,Serial.list()[0],9600);//б //работа

我在处理过程中保存文件时遇到了一个小问题。程序会保存所有内容,但当您关闭程序并再次打开它时,文件将重置为零,并从一开始就保留记录。据我所知,这都是由于在打开程序时再次创建了文件。有人知道如何打开已经创建的文件并写入吗

我将附加带有初始化的零件:

void setup(){
尺寸(330,450);//
表面。设置标题(“Пааааааааа”)//
printArray(Serial.list());//
端口=新序列(此,Serial.list()[0],9600);//б
//работа с файлами
cp5=新控制P5(本);
front=loadFont(“timesnewromaps-BoldItalicMT-20.vlw”);//Пжжжжжжжжж
output0=createWriter(“POST1.txt”);//1
output1=createWriter(“POST2.txt”);//
//создание списков
cp5=新控制P5(本);
p1=cp5.addDropdownList(“Post 1”)//1
.setPosition(100100);//
p1.增补项(c11,c11);//Пцццааааааааааа
p1.附加项(c12,c12);
p1.设置颜色背景(颜色(60));
p1.setColorActive(颜色(255,128));
p2=cp5.addDropdownList(“Post 2”)//2
.设置位置(100150);
p2.附加项(c11,c11);
p2.附加项(c12,c12);
p1.设置颜色背景(颜色(60));
p1.setColorActive(颜色(255,128));
//定制(p1);
//定制(p2);
}
处理单击下拉列表并将其写入文件的部分:

void控制事件(控制事件事件){
字符串名称=theEvent.getName();
float value=theEvent.getController().getValue();
int i=0;
如果(名称:startsWith(“Post 1”)){
如果(值==0.0){
//数据=加载字符串(“POST1.txt”);
println(“测试代码0”);
println(“测试代码0”+“+day()+”+“+month()+”+“+year()+”+“+hour()+”:“+minute()+”:“+second());
//(“POST1.txt”);
output0.flush();
//output0.close();
//退出();
}  
如果(值==1.0){
println(“测试代码1”);
println(“测试代码1”+“+day()+”+“+month()+”+“+year()+”+“+hour()+”:“+minute()+”:“+second());
output0.flush();
output0.close();
退出();
}
}
}

是,使用与现有文件相同的名称调用
createWriter
,将用新的空白文件覆盖该文件,准备输出。因此,在创建输出编写器之前,需要将文件(如果存在)读入草图中

createWriter
的对应项是。显示了如何读取文件和解析内容的示例

在该示例中,他们只是将内容绘制到屏幕上。这可能适用于您,或者您可能需要将内容存储在草图中(在数组或其他数据结构中),直到您准备将数据写回文件(进行了任何修改)


根据您正试图保存和加载的内容,您可以查看和。如果您使用的是更复杂的数据结构,则可以更轻松地加载和解析文件。

非常感谢您的回答。我试图将数据写入JSON文件,但我不太明白如何让它写入新数据,而不是覆盖现有数据。就在我的程序中,数据是通过点击来记录的。我本来想通过增加计数器来更改记录id,但没用,所以我放弃了。经过大量的测试后,我决定创建一个附加文件,在其中复制已有的数据,然后在重新创建后将其写回原始文件