30. november 2003 - 11:32Der er
12 kommentarer og 1 løsning
array - gemmes som fil.
Jeg er ved at lægge mine Bogobjekter ind i et array, og kan ikke huske hvordan man forhindre overskrivning. Desuden mener jeg at der er en metode der ser om der er et objekt på den pågældende plads i array'et.. Et andet problem er at jeg skal gemme arrayet på en fil, således mine data ikke bliver tabt, hver gang jeg lukker computeren..Kan man gøre dette på en nem måde?? Er der nogen der kan hjælpe mig med mine to problemer??
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
Jeg har ikke helt forstået det med at gemme som txt. jeg har oprettet et array med objekter, men kan ikke gemme dette array i en fil. Hvordan gemmer man et array som en fil? og da jeg er nybegynder i programmering, så må du meget gerne uddybe dine svar.
Her er et eksempel. Et meget primitivt eksempel. Men det viser ligesom lidt:
import java.io.*;
public class OutAndInAgain { public static void main(String[] args) throws Exception { Data[] x1 = new Data[4]; for(int i = 0; i < x1.length; i++) { x1[i] = null; } x1[0] = new Data(1, "a"); x1[1] = new Data(2, "bb"); x1[2] = new Data(3, "ccc"); PrintStream ps = new PrintStream(new FileOutputStream("C:\\test.txt")); for(int i = 0; i < x1.length; i++) { if(x1[i] != null) { ps.println(x1[i].getA() + " " + x1[i].getB()); } } ps.close(); Data[] x2 = new Data[4]; for(int i = 0; i < x2.length; i++) { x2[i] = null; } BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("C:\\test.txt"))); String line; int ix = 0; while((line = br.readLine()) != null) { x2[ix] = new Data(Integer.parseInt(line.substring(0,1)), line.substring(1).trim()); ix++; } br.close(); for(int i = 0; i < x2.length; i++) { if(x2[i] != null) { System.out.println(x2[i].getA() + " " + x2[i].getB()); } } } }
class Data { private int a; private String b; public Data() { a = 0; b = ""; } public Data(int a, String b) { this.a = a; this.b = b; } public int getA() { return a; } public String getB() { return b; } public void setA(int a) { this.a = a; } public void setB(String b) { this.b = b; }
}
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.