help, java rekurze, prohledávání složek | # |
| Program má pomocí rekurze vyhledat určitej soubor. Z neznámých důvodů to najde první výskyt, chvíly šrotí disk a pak to hodí: Exception in thread "main" java.lang.NullPointerException. Dík za pomoc
public static void hledej(File dir, String nazev) {
File fa[] = dir.listFiles();
for (int i=0; i<fa.length; i++) {
File f = fa;
if(f.getName().equalsIgnoreCase(nazev)){
System.out.println(f.getPath());
}
else if (f.isDirectory()) {
hledej(f,nazev);
}
}
}
public static void main(String[] args) {
hledej(new File("c:\\"), "a.txt");
} (odpovědět) | Másloid | 147.32.94.* | 28.1.2008 17:47 |
|
|
|
re: help, java rekurze, prohledávání složek | # |
| nevypadlo ti tam '' :) (odpovědět) | hih | 85.160.47.* | 28.1.2008 20:57 |
|
|
|
re: help, java rekurze, prohledávání složek | # |
| sorry server mi sezral par znaku - nechybi tam hr. zavorka i hr. zavorka?
test: !@#$%^&*()_+{}[]\/.,<>;':"` (odpovědět) | hih | 85.160.47.* | 28.1.2008 21:16 |
|
|
|
re: help, java rekurze, prohledávání složek | # |
| v jave se moc nevyznám, ale nemělo by tam bejt File f = fa; ? (odpovědět) | mon | | 28.1.2008 21:14 |
|
|
|
re: help, java rekurze, prohledávání složek | # |
| aha ono ty hranaty zavorky vyseparovalo - proste f = fa "hranata zavorka" i "konechranaty zavorky" ; (odpovědět) | mon | | 28.1.2008 21:16 |
|
|
|
re: help, java rekurze, prohledávání složek | # |
| File f = fa; (odpovědět) | |
|
|
re: help, java rekurze, prohledávání složek | # |
| File f = fa[i];
Tak ;> (odpovědět) | |
|
|
re: help, java rekurze, prohledávání složek | # |
| thumbs up ;D
----------
..:@]> [link] <[@:.. (odpovědět) | DjH | | | 319-960-895 | 28.1.2008 22:10 |
|
|
|
re: help, java rekurze, prohledávání složek | # |
| imho tam
File f = fa[i]];
měl, ale taky mu to odebralo ty hranate zavorky (zrejme kvuli BBCode)
----------
..:@]> [link] <[@:.. (odpovědět) | DjH | | | 319-960-895 | 28.1.2008 22:19 |
|
|
|
re: help, java rekurze, prohledávání složek | # |
| Mas pravdu. Chyba byla jinde ;]
Pokousi se cist i obsah adresaru do kterych nema pristup. Napr. C:\System Volume Information
Takze resenim jsou treba vyjimky.
try {
...
} catch (NullPointerException e) {
...
}
(odpovědět) | |
|
|
re: help, java rekurze, prohledávání složek | # |
| Díky, problém vyřešen. (try, catch) (odpovědět) | Másloid | 147.32.94.* | 29.1.2008 9:31 |
|
|
|