Hogyan lehet egy file-t név alapján megtalálni? (Java)
Van egy kódom, amire azt mondták, hogy ez kell, de ez nem jó, mert nem azt mutatja, amit akarok.
File file = new File("chrome.exe");
String path = file.getAbsolutePath();
System.out.println(path);
Tegyük fel a Chrome helyét akarom megtalálni, de ez mindig azt írja ki, hogy
"C:\Users\xy\Documents\NetBeansProjects\JavaApplication4\chrome.exe"
szóval magába az IDE-be mutatja örökké, és amúgy ott nincs is ilyen, hogy chrome.exe . Akármit írok a File()-ba, azt valahogy mindig itt találja meg, közbe nincs is.
Olyat akarok, ami pl a Patchek telepítésénél van, hogy megkeresi az eredeti exét, és felül írja. Olyat hogyan kell akkor?
A File objektum azt tartalmazza, amit beleírsz. Ha nem írsz elérési útvonalat, csak fájlnevet, akkor a working directory lesz az elérési út, tehát a programod mellett fogja "keresni". A File objektum NEM kereső, csak becsomagolja a fájlnevet, amit beleírsz és okos függvényeket varázsol köré.
Te KERESNI szeretnél, tehát fájlkereső függvényekre van szükséged. Például:
Egyébként ez piszok lassú lesz.
Szerintem úgy kéne csinálni, hogy lenne egy default mappa (ahova a patchelni kívánt program általában települ), ahol megnézi, hogy ott van-e, és ha nincs ott, akkor majd a felhasználó szépen betallózza magának.
#1 vagyok, kiegészítek
- a File objektumba beírhatsz abszolút útvonalat is, mappát is
- van metódusa az adott mappa tartalmának listázására - fájlnevek vagy File objektumok listáját kapod meg
- ezek alapján te is összerakhatsz egy keresőt könnyedén :)
Ettől függetlenül tartom a default mappás + tallózós javaslatom.
köszi a választ, és a linket is!
Persze a default mappa a kézenfekvő, de tudod nagyon sok a laikus aki csak a nextnextnextre kattintgat :D Lehet csak néznek mint hal a szatyorban amikor felugrik az ablak hogy keresd meg magadnak jóember :D
Szerintem a patchek és hasonlók a registry-ből olvassák ki, hogy hova lett telepítve az adott program (vagy telepítve van-e egyáltalán).
De csak megérzés.
Ehhez persze tudni kell, hogy melyik kulcsot (remélem, helyesen fogalmazok) kell megvizsgálni. Előtte keresgélj mondjuk a regedit-ben...
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!