Skip to content
Snippets Groups Projects
Commit fb9108d7 authored by Erkki Kaila's avatar Erkki Kaila
Browse files

VerkkokauppaIO

parent d4a4b175
No related branches found
No related tags found
No related merge requests found
# Default ignored files
/shelf/
/workspace.xml
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_19" project-jdk-name="19" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/oop-demo4-esimerkit.iml" filepath="$PROJECT_DIR$/oop-demo4-esimerkit.iml" />
</modules>
</component>
</project>
\ No newline at end of file
......@@ -53,4 +53,18 @@ public class Asiakas {
return 15;
}
}
/**
* Palauttaa kaikki olion tiedot yhtenä merkkijonona.
* Datapisteet on erotettu toisistaan annetulla erotinmerkillä.
*
* @return kaikki olion tiedot yhdessä merkkijonossa
*/
public String getData(String erotinmerkki) {
String data = asiakasNumero + erotinmerkki;
data += nimi + erotinmerkki;
data += ostojaTehty;
return data;
}
}
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.ArrayList;
/**
* Luokkaa käytetään verkkokaupan tietojen tallentamiseen
* ja lataamiseen tietovarastosta.
*
* @author Erkki
*/
public class VerkkokauppaIO {
public static void main(String[] args) {
ArrayList<Asiakas> al = new ArrayList<>();
al.add(new Asiakas("12345", "Antti Asiakas", 10));
al.add(new Asiakas("54321", "Anna Asiakas", 55.50));
al.add(new Asiakas("99999", "Keijo Keksitty", 1000));
kirjoitaAsiakkaat(al, "asiakkaat.csv");
}
private static final String EROTIN = ";";
public static void kirjoitaTiedosto(String tiedostonimi,
String sisalto) {
try (PrintWriter tiedosto = new PrintWriter(tiedostonimi)){
tiedosto.write(sisalto);
} catch (FileNotFoundException e) {
System.out.println("Tapahtui virhe: " + e);
}
}
public static void kirjoitaAsiakkaat(ArrayList<Asiakas> asiakasLista,
String tiedostonNimi) {
String data = "";
for (Asiakas asiakas : asiakasLista) {
data += asiakas.getData(VerkkokauppaIO.EROTIN);
data += "\n";
}
// Poistetaan viimeinen "turha" rivinvaihto
if (data.length() > 0) {
data = data.substring(0, data.length() - 1);
}
kirjoitaTiedosto(tiedostonNimi, data);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment