dl
Nybegynder
17. januar 2006 - 19:55
Der er
8 kommentarer og 1 løsning
Gem LinkedListe som objeck i fil
Jeg skal gemme noget data i en fil. Dette data jeg skal gemme, er en hel LinkedListe, som skal gemmes som et Object i en fil. Hvordan gemmer jeg filen, og læser den ind igen ? jeg har prøvet og se på PrintStream, men er ved at få grå hår af det . Dennis
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
17. januar 2006 - 21:03
#2
serialisering enten normal binær serialisering eller XML serialisering
17. januar 2006 - 21:04
#3
og Simon har helt ret - dette er ikke et J2EE spørgsmål medmindre du vil bruge en entity bean til at gemme med :-)
17. januar 2006 - 21:07
#4
wikipedia er vist iøvrigt ikke helt korrekt "Java EE includes several API specifications, for example JDBC, client-side applets, RPC, CORBA, and defines how to coordinate them." " One "consensus" is that Java EE is best for multiplatform architectures, whereas .NET should be used for a strictly Microsoft platform (and not to be migrated to for non-Microsoft platform integration)."
dl
Nybegynder
18. januar 2006 - 00:23
#5
har set jeres link, og siger mig ikke lige noget .. som jeg kan bruge. Jeg snakker ikke om entry beam og så vidre, det har jeg ikke lært endnu :P Min ide var. at bruge interface: Serializable og bruge noget fileoutput st = new bla bla PrintWriter.WriteObject( Object ); st.close(); og så skal jeg lige bruge en metode til at load den igen. //dl
18. januar 2006 - 00:26
#6
jeg har et eksempel med både binær og XML serialisering: import java.util.*; import java.beans.*; import java.io.*; public class SerTest implements Serializable { public int a; private int b; private transient int c; private HashMap hm1; private HashMap hm2; public SerTest() { a = 0; b = 0; c = 0; hm1 = new HashMap(); hm2 = new HashMap(); } public SerTest(int a, int b, int c, String v) { this.a = a; this.b = b; this.c = c; hm1 = new HashMap(); hm2 = new HashMap(); hm1.put("k1", v); hm2.put("k2", v); } public int getB() { return b; } public int getC() { return c; } public HashMap getHm1() { return hm1; } public void setB(int b) { this.b = b; } public void setC(int c) { this.c = c; } public void setHm1(HashMap hm1) { this.hm1 = hm1; } public String toString() { return (a + " " + b + " " + c + " " + hm1 + " " + hm2); } public static void main(String[] args) throws Exception { SerTest st1 = new SerTest(1, 2, 3, "V"); XMLEncoder xe = new XMLEncoder(new FileOutputStream("C:\\xml.dat")); xe.writeObject(st1); xe.close(); XMLDecoder xd = new XMLDecoder(new FileInputStream("C:\\xml.dat")); SerTest st2 = (SerTest)xd.readObject(); System.out.println(st1 + " -> " + st2); ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("C:\\bin.dat")); oos.writeObject(st1); oos.close(); ObjectInputStream ois = new ObjectInputStream(new FileInputStream("C:\\bin.dat")); SerTest st3 = (SerTest)ois.readObject(); System.out.println(st1 + " -> " + st3); } }
18. januar 2006 - 00:46
#7
Næ det er altid godt med noget kildekritik når man bruger wikipedia, men langt hen af vejen er det nu fint. dl> nu var linkene nu hellere ikke så meget for at hjælpe dig med det specifikke problem, men mere for at vise lidt om hvad j2ee er og hvorfor dit spørgsmål var placeret i den forkerte katagori så du vidste det til en anden gang :)
dl
Nybegynder
18. januar 2006 - 09:57
#8
min løsning på dette problem. med alle de problemmer dette har. import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; public class FileHandler { public FileHandler() { } public void saveObjectToFile(String file, Object o) { try { FileOutputStream fop = new FileOutputStream(file); ObjectOutputStream oos = new ObjectOutputStream(fop); oos.writeObject(o); oos.close(); } catch (Exception e) {} } public Object loadObjectFromFile(String file) { Object temp = null; ObjectInputStream ois = null; try { FileInputStream fis = new FileInputStream(file); ois = new ObjectInputStream(fis); temp = ois.readObject(); ois.close(); } catch (Exception e) {} return temp; } } //dl
dl
Nybegynder
18. januar 2006 - 09:57
#9
svar til mig selv
Kurser inden for grundlæggende programmering