Skip to content
Snippets Groups Projects
Commit 4fcc67aa authored by Hiltunen Markus Petteri's avatar Hiltunen Markus Petteri
Browse files

Tallettaa suoritukset tiedostoon.

parent cff065a2
No related branches found
No related tags found
No related merge requests found
......@@ -48,6 +48,15 @@ public class Reittiloki {
public List<Halli> annaHallit(Suoritus s) {
return hallit.annaHallit(s.getId());
}
/**
* Tallentaa suorituksen tiedot tiedostoon.
* @param nimi Reittiloki hakemiston nimi
* @throws SailoException Näytetää mikäli ongelmia tallentamisessa.
*/
public void talenna(String nimi) throws SailoException {
suoritukset.tallenna(nimi);
}
/**
* @param args ei käytössä.
......
package reittiLoki;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintStream;
/**
* @author OMISTAJA
* @version 31.3.2025
......@@ -10,6 +15,7 @@ public class Suoritukset {
private static final int Maksimi = 5;
private int lkm;
private Suoritus[] alkiot;
private String tiedostoNimi = "";
/**
* Alustetaan Suoritukset taulukko.
......@@ -46,6 +52,31 @@ public int getLkm() {
return this.lkm;
}
/**
* @param hakem Hakemisto, josta käytettäävää tiedostoa yritetään hakea.
* @throws SailoException Virhetilanne mikäli tiedostoa ei löydy.
*/
public void lueTiedostosta(String hakem) throws SailoException{
tiedostoNimi = hakem + "/suoritukset.dat";
throw new SailoException("Ei osata vielä lukea tiedostoa");
}
/**
* @param hakem Hakemiston nimi
* @throws SailoException Kertoo mikäli törmätään virhetilaan tiedoston tallantemisessa.
*/
public void tallenna(String hakem) throws SailoException {
File tied = new File(hakem + "/suoritukset.dat");
try (PrintStream fo = new PrintStream(new FileOutputStream(tied))){
for (int i = 0; i < this.getLkm(); i++) {
Suoritus suoritus = this.anna(i);
fo.println(suoritus.toString());
}
} catch (FileNotFoundException e) {
throw new SailoException ("Tiedoston avaamista ei ole vielä tehty");
}
}
/**
* @param args ei käytössä.
* @throws SailoException Kertoo mikäli Suorituksia ei enää mahdu taulukkoon.
......@@ -70,6 +101,12 @@ public static void main(String[] args) throws SailoException {
}
try {
suoritukset.tallenna("suoritukset");
} catch (SailoException e) {
System.err.println(e.getMessage());
}
suoritukset.getLkm();
......
......@@ -100,6 +100,24 @@ public class Suoritus {
public String getNimi() {
return this.nimi;
}
/**
* Muuntaa Suorituksen tiedot merkkijonoksi.
*/
@Override
public String toString() {
return "" +
getId() + "|" +
nimi + "|" +
vaikeusAste + "|" +
kiipeilyTyyli + "|" +
reitinTyyppi + "|" +
suoritusPvm + "|" +
yrityksia + "|" +
halli + "|" +
kommentti;
}
/**
......
1||||||0||
2||||||0||
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment