Avatar billede mht_iot Nybegynder
03. april 2002 - 04:44 Der er 2 kommentarer og
1 løsning

Serialization: HashTables

Hej.
Jeg har en Hashtable som indeholder nogle varenr som nøgle og nogle tilhørende vare beskrivelse.
Denne Hashtable tilføjer jeg så nogle nye entries i via en metode jeg har. Men jeg vil gerne kunne gemme denne
Hashtable så jeg kan indlæse disse data igen.
Det ville hjælpe med noget source hvis det over hovedet er muligt. Har tænkt på at løse det med vektore men ville lige se om det ikke var muligt på denne måde først.

Med håb om positivt respons.

MVH
/MHT
Avatar billede conrad Nybegynder
03. april 2002 - 04:51 #1
Jeg har selv brugt foelgende til at hente og gemme hastables. Det er nok ikke den mest optimale kode men..

Men husk at de klasser som du putter i din hashtable skal implementere Serialazible


// return 0 on success and -1 if the operation failed
    public int save(String filename, Hashtable shapes)
    {
        try
        {
            // files will be saved the the directory called "saved"
            File out = new File("saved/" + filename);
            FileOutputStream outstream = new FileOutputStream(out);
            ObjectOutputStream objstream = new ObjectOutputStream(outstream);
            objstream.writeObject(shapes);
            objstream.close();
            outstream.close();
            return 0;
        }
        catch(IOException e)
        {
            System.out.println("Error on saving file: " + filename);
            return -1;
        }
    }

    // This function loads a Hashtable
    public Hashtable load(String filename)
    {
        try
        {
            File in = new File("saved/" + filename);
            FileInputStream instream = new FileInputStream(in);
            ObjectInputStream objin = new ObjectInputStream(instream);
            Hashtable result = (Hashtable) objin.readObject();
            return result;
        }
        catch(Exception e)
        {
            System.out.println("Error on loading file: " + filename);
            return null;
        }
    }
Avatar billede mht_iot Nybegynder
03. april 2002 - 05:42 #2
Jeg har kigget på det og det er lige hvad jeg har brug for. Hvis du bare lige kan hjælpe mig med en sidste ting så er de point dine og jeg er en meget glad mand.
Nu antager vi så at jeg har lageret følgende data i en hashtable :
(123456789,"Tand Pasta")
(123456790,"Sæbe")
osv....
Disse værdier henter jeg så ind igen med din load metode.
Dette virker uden problemer.
Men hvordan traversere jeg igennem Hashtablen således at jeg f.eks
kan fylde et JTextArea ud med alle de værdier som denne Hashtable indeholder.?

Jeg venter spændt.

Med Venlig Hilsen

/MHT
Avatar billede mht_iot Nybegynder
03. april 2002 - 05:57 #3
Jeg har selv fundet ud af det. Men tusinde tak for din hjælp.
Så behøvede jeg ikke at anvende vektore alligevel.

Her har du dine points..

MVH
/MHT
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester