szunyog188 Creative Commons License 2011.04.21 0 0 5528

Hali.

 

Segítségre lenne szükségem. Van egy felada tamit javaban kellene megoldanom, csak vannak dolgok amiket nem értek és ezért megkérdezem itt is. Szóval a feladat:

 

Adott egy program ami paraméterként kap egy file-t, amelyben beléptetőrendszer adatok vannak:

Fűrész Elek, 10:21:10, be
Toth Jozsef, 11:12:45, ki
Kiss Janos, 12:25:12, be
Nagy Tamás1 18:27:11, ki

Írja ki, hogy ki hogy egy paraméterben megadott időpontban kik vannak benn.

Odáig megvan, hogy paraméterben megadom a file-t, beolvassa soronként.

 

import java.io.*;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.Map.Entry;


public class Beleptetorendszer2 {

    
    public static void main(String[] args) {
        SimpleDateFormat sdf = new SimpleDateFormat("hh:mm:ss");
        Calendar cal;
        String sor;
        String[] t;
        String v = ",";
        String be ="be";
        Map<String, Integer> map = new HashMap<String, Integer>();
        if(args.length != 0){
                try{
                    for(int i = 0; i<args.length; i++){    
                        BufferedReader bf = new BufferedReader(new FileReader(args[i]));
                        while((sor = bf.readLine()) != null){
                            t = sor.split(v);
                          
                             
                            }
                                System.out.println(sor);
                        }
                        bf.close();
                }
                if(map.size()==0){
                    System.out.println("Nincs bejelentkezve senki!");
                }else{
                    for(Entry<String, Integer> a : map.entrySet())
                        System.out.println(a.getKey());
                }
                }catch(IOException e){
                    e.printStackTrace();
                }
            }else{
            System.out.println("Nincs megadva paraméterbe fájl!");
        }

    }
}

 

Elképzelésem lenne, hogy miként valósítanám meg, de a kódolással már problémám van.

A beolvasott sorok t[1] részét kellene vizsgálni(az időpontot) és ha ez megegyezik akkor a Map-ből csak ezeket listázza ki. Másik gondolatom, hogy azt is kellene vizsgálni, hogy a sorok t[2] tömbjében szerepel-e a ,,be,, szó. Ha igen akkor csak ezeket írja ki.
A másik gondom ez a dátum kezelés lenne. Azzal is tisztában vagyok, hogy a Calendar objektumot formázni kellene erre: hh:mm:ss, ezt a SimpleDateFormat-tal valósítottam meg, csak nem vagyok benne biztos, hogy működne-e.

 

Szoval ez lenne az én elméletem.

 

Köszönöm előre is a segítséget.:)