Kezdőoldal » Számítástechnika » Programozás » Az alábbi programkóddal mi...

Az alábbi programkóddal mi lehet a hiba?

Figyelt kérdés

A fileBeolvas és a fileKiir metódus csak azért jött létre hogy konzolon is ellenőrizhessem, viszont a ,,fajlbairas" részen lehet valami probléma amit nem látok. A fájlt létrehozza de sajnos teljesen üresen. Valaki látja esetleg hogy miért?


package gyakkovi;


import java.io.*;

import java.util.*;



class Edzesterv{

String het = "";

String nap = "";

ArrayList<Integer> darab = new ArrayList<>();


@Override

public String toString() {

return het + ", " + nap + ", " + darab;

}


public String toCSV(){

String line = het + ";" + nap + ";";

for (int i = 0; i < darab.size(); i++) {

line = line + darab.get(i);

if(i != darab.size() - 1){

line = line + ";";

}

else{

line = line + "\r\n";

}

}

return line;

}

}



public class Gyakkovi {


static ArrayList<Edzesterv> edzesterv = new ArrayList<>();


public static void main(String[] args) {

fileBeolvas(edzesterv, "C:\\Users\\Mate\\Desktop\\beolvasofajl\\edzesterv.csv");

fileKiir(edzesterv);

fajlbairas(edzesterv, "C:\\Users\\Mate\\Desktop\\kimenetifajl\\edzesgyakorlas.csv");

}


private static void fileBeolvas(ArrayList<Edzesterv> edzesterv, String fileNev) {

try {

File f = new File(fileNev);

Scanner fileScan = new Scanner (f, "ISO-8859-2");

while(fileScan.hasNextLine()){

String sor = fileScan.nextLine();

String [] adatok = sor.split(";");

Edzesterv terv = new Edzesterv();

terv.het = adatok[0];

terv.nap = adatok[1];

for (int i = 2; i < adatok.length; i++) {

terv.darab.add(Integer.parseInt(adatok[i]));

}

edzesterv.add(terv);

}

} catch (Exception e) {

System.out.println(e.getMessage());

}

}


private static void fileKiir(ArrayList<Edzesterv> edzesterv){

for (int i = 0; i < edzesterv.size(); i++) {

System.out.println(edzesterv.get(i));

}

}


private static void fajlbairas(ArrayList<Edzesterv> edzesterv, String fileNev) {

File kiiros = new File(fileNev);

try {

FileOutputStream os = new FileOutputStream(kiiros, false);

OutputStreamWriter osw = new OutputStreamWriter(os, "ISO-8859-2");

for (Edzesterv edzTerv : edzesterv) {

if(edzTerv.het.equals("1. het")){

osw.write(edzTerv.toCSV());

osw.write(edzTerv.het + ";" + edzTerv.nap + ";");

for (Integer gyakorlat : edzTerv.darab) {

osw.write(gyakorlat + ";");

}

osw.write("\r\n");

}

}

osw.flush();

} catch (Exception e) {

System.out.println(e.getMessage());

}

}


}


2018. nov. 10. 22:13
 1/2 anonim ***** válasza:
if(edzTerv.het.equals("1. het"))
2018. nov. 11. 08:15
Hasznos számodra ez a válasz?
 2/2 anonim ***** válasza:
A hiba az hogy ez egy internetről, hozzáértés nélkül összeollózott és kicsit átírt vacaknak tűnik. Javaslom fogj egy értelmes könyvet, olvasd el az alapvető dolgokat és kezd elölről. Szinte egyetlen dolgot nem látok, ami rendben lenne ebben a kódban.
2018. nov. 11. 09:33
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!