Skip to content
Snippets Groups Projects
Commit f51bed84 authored by aichinos's avatar aichinos
Browse files

en ymmärrä miten git toimii, kun muutokset näköjään hävinnyt

parent ad960189
No related branches found
No related tags found
No related merge requests found
......@@ -17,7 +17,7 @@ public class Kurssit {
private Kurssi[] kurssit;
private int kpl = 0;
private static String tiedostonNimi = "";
private static String tiedostonNimi = "tiedot";
private static final int MAX_KPL = 5;//montako kurssia yhdelle taulukolle
......@@ -66,7 +66,7 @@ public class Kurssit {
}
/**
/**
* HUOM!! Tee loppuun asti!!! 12.3.
* Lukee kurssi-lista tiedostosta.
* @param hakemisto tiedoston hakemisto
......@@ -84,7 +84,7 @@ public class Kurssit {
continue;
}
Kurssi kurssi = new Kurssi();
kurssi.parse(s);//parse pitää muokata!!
kurssi.parse(s);
lisaa(kurssi);
}
} catch (FileNotFoundException e) {
......@@ -160,17 +160,22 @@ public class Kurssit {
//taulukko.lisaa(ohjelmointi2);
//taulukko.lisaa(japani4);
//taulukko.lisaa(ohjelmointi2);
for (int i=0; i<taulukko.getKpl(); i++) {
Kurssi kurssi = taulukko.anna(i);
System.out.println("Säilytetty taulukon paikalla: " + i);
kurssi.tulosta(System.out);
}
} catch (SailoException e) {
System.err.println(e.getMessage());
}
System.out.println("=======================Kurssit testi==========================");
System.out.println("=====================================");
for (int i=0; i<taulukko.getKpl(); i++) {
Kurssi kurssi = taulukko.anna(i);
System.out.println("Säilytetty taulukon paikalla: " + i);
kurssi.tulosta(System.out);
try {
taulukko.tallenna("tiedot");
} catch (SailoException e) {
System.err.println(e.getMessage());
}
}
......
......@@ -148,8 +148,9 @@ public class Tapaaminen {
* </pre>
*/
public void rekisteroi() {
this.tapaaminenID = nextmID;
nextmID++;
this.setmID(nextmID);
//this.tapaaminenID = nextmID;
//nextmID++;
}
......@@ -161,6 +162,16 @@ public class Tapaaminen {
}
/**
* Varmistetaan, että nextmID on isompi kuin nykyisen suurin nro
* @param nro asetettava tapaaminenID
*/
public void setmID(int nro) {
this.tapaaminenID = nro;
if (this.tapaaminenID >= nextmID) nextmID = this.tapaaminenID+1;
}
/**
* @return kyseisen tapaamisen kID (eli kurssin ID), joka kertoo mihin kurssiin kyseinen tapaaminen liittyy
*/
......@@ -176,6 +187,24 @@ public class Tapaaminen {
}
/**
* @param rivi tiedostosta luettu ja käsitteltävä rivi
*/
public void parse(String rivi) {
// TODO Auto-generated method stub
}
@Override
public String toString() {
//TODO toteutus!!
return "";
}
//==========================================================================
/**
* @param args ei käytössä
......
package mmkurssit;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Scanner;
/**
* Tietorakenne (tällä kerralla taulukko), jossa säilytetään tapaamiset alkioina.
......@@ -13,6 +19,7 @@ import java.util.List;
public class Tapaamiset {
private Collection<Tapaaminen> alkiot = new ArrayList<Tapaaminen>();
private static String tiedostonNimi = "tiedot";
//======================================================
......@@ -31,6 +38,13 @@ public class Tapaamiset {
}
/**
* @return listan pituus
*/
public int listankoko() {
return this.alkiot.size();
}
/**
* @param kurssiID kyseisen kurssin ID
* @return Lisa, jossa on tapaamisia, jonka kID on sama kuin parametriksi annettu kurssiID
......@@ -83,6 +97,55 @@ public class Tapaamiset {
}
/**
* HUOM!! Tee loppuun asti!!! 12.3.
* Lukee kurssi-lista tiedostosta.
* @param folderName tiedoston hakemisto
* @throws SailoException jos lukeminen ei onnistu
*/
public void lueTiedostosta(String folderName) throws SailoException {
tiedostonNimi = folderName + "/tapaamiset.dat";
File ftied = new File(tiedostonNimi);
try (Scanner fileIn = new Scanner(new FileInputStream(ftied))){
while ( fileIn.hasNext() ) {
String s = fileIn.nextLine();
if( s == null || "".equals(s) || s.charAt(0) == ';') {
continue;
}
Tapaaminen tap = new Tapaaminen();
tap.parse(s);//parse pitää muokata!!
lisaa(tap);
}
} catch (FileNotFoundException e) {
throw new SailoException("Ei saa luettua tiedostoa" + tiedostonNimi);
}
}
/**
* Tallentaa kurssi-data tiedostoon.
* @param folderName mihin tallennetaan
* @throws SailoException jos tallennus ei onnistu
*/
public void tallenna(String folderName) throws SailoException{
//TODO: hakemiston luominen tähän?
File ftied = new File(folderName + "/tapaamiset.dat");
try (PrintStream fileOut = new PrintStream(new FileOutputStream(ftied, true))){
// true = uusi text appendoidaan vanhan tekstin perälle
for(int i=0; i<listankoko(); i++) {
Tapaaminen tap = annaTapaaminen(i);
fileOut.println(tap.toString());
}
} catch (FileNotFoundException e) {
throw new SailoException("Tiedosto " + ftied.getAbsolutePath());
}
}
//=======================================================
/**
......
1|Esimerkkikurssi22|Kokko Vesa
2|Esimerkkikurssi79|Kokko Vesa
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