Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Læringsmål:

  • Strenger
  • Filbehandling

Pensum:

  • Kap 8.2
  • Kap 9.1


I denne oppgave skal det lages en persondatabase. Det innebærer å lage en fil som inneholder strengrepresentasjoner av personstrukturen fra oppgaven over.

a)

Lag funksjonen serializePerson(person). Funksjonen tar inn en personstruktur og skal returnere en strengrepresentasjon av strukturen. Tekststrengen skal være på følgende format:

<navn>#<dato>#<tlf>

Her separerer # - tegnet de ulike feltene. Feks blir strukturen fra oppgave 2 c): Per Persson#20.05.1990#48151623

Tips: Skriv funksjonen serializeDate(date) som returnerer tekstrengen <dag>.<måned>.<år> .

 b)

Lag funksjonen deserializePerson. Denne skal konvertere en tekststreng til personstruktur. 

Tips: Lag hjelpefunksjonen deserializeDate
deserializeDate("20.05.1990") gir struct('day', 20, 'month', 5, 'year', 1990)

c)

Lag funksjonen store(fileName, listOfPersons). listOfPersons er en liste med personstrukturer og filename er en tekststreng med navnet på filen som kalleren av funksjonen ønsker å lagre personene i. Funksjonen skal bruke serializePerson for å gjøre om personstrukturene til tekststrenger som skal skrives på hver sin linje i filen.

d)

Lag funksjonen loadfile(filename). Funksjonen skal lese filen filename linje for linje. For hver linje skal den bruke deserializePerson for å lage en personstruktur av den leste linjen. Funksjonen skal returnere en vektor med alle personene fra filen.