What is a good way to save/load values from a text file?
- void saveNamePositions(){
- PrintWriter output = createWriter("savedPositions.txt");
- output.println("count\t"+count);
- for(int i = 0; i < count; i++){
- Name name = names.get(i);
- output.println("#\t"+i);
- output.println("name.id\t"+name.id);
- output.println("name.targetID\t"+name.targetID);
- output.println("name.destX\t"+name.destX);
- output.println("name.destY\t"+name.destY);
- output.println("name.align\t"+name.align);
- TextArea ta = textAreas.get(name.targetID);
- output.println("ta.id\t"+ta.id);
- output.println("ta.leftTargetSet\t"+ta.leftTargetSet);
- output.println("ta.rightTargetSet\t"+ta.rightTargetSet);
- }
- output.flush();
- output.close();
- println("saved name positions");
- };
- void loadNamePositions(){
- // reset all textAreas
- for(TextArea ta : textAreas) {
- ta.reset();
- }
- String[] lines = loadStrings("../savedPositions.txt");
- String[] tokens = splitTokens(lines[0], "\t");
- count = int(tokens[1]);
- for(int i = 1; i < lines.length; i++){
- if(lines[i].startsWith("#")){
- i++;
- tokens = splitTokens(lines[i], "\t");
- int Nid = int(tokens[1]);
- i++;
- tokens = splitTokens(lines[i], "\t");
- int NtargetID = int(tokens[1]);
- i++;
- tokens = splitTokens(lines[i], "\t");
- int NdestX = int(tokens[1]);
- i++;
- tokens = splitTokens(lines[i], "\t");
- int NdestY = int(tokens[1]);
- i++;
- tokens = splitTokens(lines[i], "\t");
- int Nalign = int(tokens[1]);
- i++;
- tokens = splitTokens(lines[i], "\t");
- int TAid = int(tokens[1]);
- i++;
- tokens = splitTokens(lines[i], "\t");
- boolean TAleftTargetSet = boolean(tokens[1]);
- i++;
- tokens = splitTokens(lines[i], "\t");
- boolean TArightTargetSet = boolean(tokens[1]);
- Name name = names.get(Nid);
- name.targetID = NtargetID;
- name.destX = NdestX;
- name.destY = NdestY;
- name.align = Nalign;
- //aditional but not from load:
- name.x = NdestX;
- name.y = NdestY;
- TextArea ta = textAreas.get(name.targetID);
- ta.leftTargetSet = TAleftTargetSet;
- ta.rightTargetSet = TArightTargetSet;
- }
- }
- println("loaded name positions");
- };
2