Dziwny problem z zawieszaniem sie aplikacji

0

Tworze aplikacje ;) No taki jakby ftp explorer ale w wersji 0.00001 beta ;> Mam problem przy wczytywaniu zawartosci katalogu. Na razie(w ramach testu) chce pobrac pierwszy element z linii czyli prawo dostepu i wrzucic to na moja "tabelke":

1 kod laczenie sie z serverem i pobieranie:

       public void actionPerformed(ActionEvent e)
       {
              if(e.getActionCommand() == "scan")
              {
                    scan(address.getText());
                    display.addElement(address.getText(), "0", "-");
                    repaint();
              }
       }

       public void scan(String domainName)
       {

            String line;
            URL url;

            FileOutputStream fout = null;
            File plik = new File("D:/java/sockety/plik.txt");
            try {
                fout = new FileOutputStream(plik);
            } catch(FileNotFoundException e) {
                return;
            }
            DataOutputStream out = new DataOutputStream(fout);
            try {
                url = new URL(domainName);
                BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()));
                String split[];
                String prawo;
                while((line = br.readLine()) != null)
                {
                    //out.writeBytes(line + "\n");
                    //split = line.split("\\s");
                    StringTokenizer st = new StringTokenizer(line);
                    prawo = st.nextToken();
                    out.writeBytes(prawo + "\n");
                    //String prawo = split[0];
                    //display.addElement("abc", "123", prawo);
                    if(prawo != null)
                        display.addElement("abc", "1256", prawo);
                }
            } catch(Exception e) {
            }
       }

2 kod dodajac do display element:

    void addElement(String name1, String size1, String access1)
    {
         if(pos < 10)     //add element at tab[0]
         {
            pos++;
                name[pos] = name1;
                size[pos] = size1;
                access[pos] = access1;
         }
    }

W tym 2nd kodzie nie ma co prawda sprawdzania przekorczenia tablicy i innych takich ale nie w tym problem bo wiem ze server z ktorym sie lacze ma tylko 4 katalogi.

Gdy klikam na przycisk app sie wiesza... o dziwo gdy w linijka:

display.addElement("abc", "1256", prawo);

zostanie zastapiona np:
display.addElement("abc", "1234", "drw");

wszystko dziala. Dodalem potem jeszcze na wszelki wypadek kontrole czy prawo != null ale to tesh nie pomoglo i dalej sie wiesza. Na dodatek gdy sie zawiesi nie zapisuje nic do pliku, mimo ze zapis do pliku jest wywolywany przed to funkcja addElement. Kompletnie nie wiem w czym blad.

0

Hmm... problem po czesci rozwiazany...
po kazdym znalezionym i dodanym folderze lub pliku daje repaint i jest good ale nie wiem czemu tak sie dzieje... lepiej byloby bez tego repainta

Ma ktos jakis pomysl?

0

Daj zamiast Repaint

Application->ProcessMessages();

1 użytkowników online, w tym zalogowanych: 0, gości: 1