Hi,mam takovy problem - mam odevzdat program abych dostal zapocet z javy - to by takovy problem nebyl,progrma uz napsany mam.Problem je ze ma byt aspon trochu okomentovany a ja se v jave moc nevyznam(hlavne v tech jejich tridach,metodach atd...nejak nam to poradne nevysvetlili).Mno takze mam dve prosby:
1,obsahuej tenhle program aspon dve metody?
2,neokomenotav byste mi to nekdo plsaspon teda ty metody/tridy co ktera dela
diky moc za jakoukoliv pomoc
jej,koukam ze ta citace nezachovala formatovani - mno snad to pro vas bude srozumitelne i takhle
edit:diky ktk sem to predelal tak ze formatovani je ok
edit2:tak to potrebuju jako java doc
Kód:/** *Program slouzi k analyze(co do pristupu z ruznych domen) *zadaneho logoveho soubouru * *@author xstav17 *@created 17.dec 2003 */ import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.io.*;import java.util.*; public class Glog extends JFrame { //vytvoreni vsech GUI komponent formulare JButton tlac1 = new JButton("Otevri"); JButton tlac2 = new JButton("Start!"); JTextArea vypis = new JTextArea(); JPanel zahlavi = new JPanel(); JLabel textZadej = new JLabel ("Zadejte soubor: "); JTextField zadejSoubor = new JTextField(20); class Kl extends KeyAdapter { public void keyPressed (KeyEvent e) { //stisk klavesy enter if (e.getKeyChar()==KeyEvent.VK_ENTER) { zpracovani(zadejSoubor.getText()); zadejSoubor.setText(""); } } } class Tlac implements ActionListener { //Listener odchycuje stisk tlacitka tlac1 a vykona metodu zpracovani() a vymaze textove pole zadejSoubor public void actionPerformed(ActionEvent e){ zpracovani(zadejSoubor.getText()); zadejSoubor.setText(""); } } class VyberSouboru implements ActionListener { //Listener odchycuje stisk tlacitka tlac2 //zobrazi JFileChooser pro vyber souboru ke cteni public void actionPerformed (ActionEvent e) { JFileChooser fc = new JFileChooser(); int stavVyberu = fc.showOpenDialog(Glog.this); if (stavVyberu ==JFileChooser.APPROVE_OPTION) zadejSoubor.setText(fc.getCurrentDirectory().toString()+"\\"+fc.getSelectedFile().getName()); else zadejSoubor.setText("Akce vyberu souboru stornovana"); Glog.this.repaint(); } } public Glog(String nadpis){ // konstruktor tridy, bere nadpis typu string za paramatr setTitle(nadpis); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //prida komponanty do formulare getContentPane().add(new JScrollPane(vypis),BorderLayout.CENTER); zahlavi.add(textZadej); zahlavi.add(zadejSoubor); zahlavi.add(tlac1); zahlavi.add(tlac2); getContentPane().add(zahlavi,BorderLayout.NORTH); //prida listenery k tlacitkum zadejSoubor.addKeyListener(new Kl()); tlac1.addActionListener(new VyberSouboru()); tlac2.addActionListener(new Tlac()); } public static void main(String[] args) { /** *Metoda main spousti aplikaci *vytvori tridu Glog, nastavi velikost a pozici a zviditelni */ Glog apl = new Glog("Vypis domen z log souboru"); apl.setLocation(100, 100); apl.setSize(500, 400); apl.setVisible(true); } void zpracovani(String jmenoSouboru) { /** *Vlastni zpracovani log souboru * *@param jmenoSouboru Parametr obsahuje jmeno souboru k zpracovani */ try{ vypis.setText(""); vypis.setForeground(Color.black); String addr = new String(); String domena = new String(); HashMap mapa = new HashMap(); //vytvoreni trid pro cteni a precteni prvniho radku souboru FileReader reader = new FileReader (jmenoSouboru); BufferedReader br = new BufferedReader (reader); String radek = br.readLine(); while (radek !=null) { //rozparsrovani na jednotlive polozky pomoci Tokenizeru StringTokenizer rozsekat = new StringTokenizer (radek); addr = rozsekat.nextToken(); if (addr.charAt(addr.length() - 1) == '.') { //pokud jde o domenu, oddelit domenu 1 radu a prevede na mala pismena int inx = addr.lastIndexOf(".", addr.length() - 2); domena = addr.substring(inx+1, addr.length()-1); domena=domena.toLowerCase(); if (mapa.containsKey(domena)) { Object object = mapa.get(domena); int pocet = ((Integer) object).intValue(); pocet ++; mapa.put(domena, new Integer(pocet)); } else mapa.put(domena, new Integer(1)); } //cte dalsi radek souboru radek = br.readLine(); } Object[] arDomeny = mapa.keySet().toArray(); //seradi domeny Arrays.sort(arDomeny); //vypise vsechny domeny do JTextArea kazdou na jeden radek for (int i = 0; i < arDomeny.length; i++) vypis.append(arDomeny[i] + ":\t" + mapa.get(arDomeny[i])+"\n"); br.close(); } //nasleduje odchyt pripadnych vyjimek //nejdriv chyba v nalezeni souboru a pak obecna pristupova chyba catch (FileNotFoundException e) { JOptionPane.showMessageDialog(null, "Soubor nebyl nalezen!!!! ", " Chyba ", JOptionPane.ERROR_MESSAGE ); } catch (IOException e ) { JOptionPane.showMessageDialog(null, "Chyba pri cteni! ", " Chyba ", JOptionPane.ERROR_MESSAGE ); } } }




Odpověď s citací