Desktopsuchmaschine

exit666

Grünschnabel
Ich hab realtiv kurzfristig den Auftrag erhalten für ein Firmennetzwerk eine Suchmaschine zu erstellen die nur nach einer Hand voll Dateitypen suchen kann und am besten direkt vom Server aus ausgeführt wird. Daher ging mein erster Gedanke zu Java.
Ist das grundsätzlich möglich? Hat jemand sowas schonmal gemacht?
Ich bräcuhte da mal irgendwie nen Ansatz für und evtl. nen gutes Tutorial, weil ich soweit noch nicht in Java eingestiegen bin.
 
Moin!
Sollst du nur den Server durchsuchen lassen, oder das komplette Firmennetz?
Ersteres ist "relativ" einfach. Da würde ich RMI nutzen, um die Parameter an den Server zu senden. Dieser führt die Suche aus und liefert das Ergebniss zurück. Zu RMI und auch zu Suchen gibts hier ne Menge Threads.. einfach mal "suchen" :)...
Das komplette Firmennetz zu durchsuchen ist ein bisschen komplizierter. Vielleicht solltest du dafür ( oder aber auch für die Serversuche) schon eine fertige Lösung nutzen?
Schau dir doch mal den Google Desktop an. Ist meines Wissens kostenlos und soll einfach zu bedienen sein.. Ist allerdings glaub ich nur für Windows...

*grüssle*
MeinerEiner
 
Es geht wirklich nur darum den Netzwerkserver zu durchsuchen auf den alle zugreifen und Ihre Dokumente ablegen. Werd gleich mal die Suche bemühen, besten Dank schonmal.

Google Desktop geht leider nicht weil hier nichts installiert werden kann. Administratorrechte hat nur eine Fremdfirma die die IT betreut. Deshalb muss es was sein was ohne Installation auskommt.
 
Moin!
Da ich selber mal eine rekursive Suche implementiert habe, post ich dir die mal schnell:
Code:
/Erwartet einen Suchstring und das Startverzeichnis für die Suche
public ArrayList<File> searchForFile(File dir, String toFind) { 
 
   File[] files = dir.listFiles(); 
   ArrayList<File> results = new ArrayList<File> (); 
   if (files != null) { 
      for (int i = 0; i < files.length; i++) { 
         if (files[i].getName().equals(toFind)) { 
            results.add(files[i]); 
         } 
         if (files[i].isDirectory()) { 
            results.addAll(searchForFile(files[i], toFind)); 
         } 
      } 
   } 
   return results; 
}
Hoffe mal das hilft!
*grüssle*
MeinerEiner
 
Zurück