# [Bibliotheksprogramm]Input und String vergleichen,Treffer ausgeben



## KingKas (9. Januar 2006)

Hi,

Ich habe mit meinem Infokurs die Aufgabe ein Bibliotheksprogramm zu schreiben. Meiner Gruppe wurde die Aufgabe zugeteilt, dass wir eine Suche erstellen sollen. Nun hapert es uns ein wenig an Kenntnissen und wir müssen es schaffen, das Input mit dem String zu vergleichen und dann auch die Treffer auszugeben. Wie wir das allerdings angehen sollen ist uns nicht bekannt und wir würden dies allerdings gerne bewältigen. Unser Lehrer meinte das ginge mit compareTo doch irgendwie funktionierte es nicht so wie es sollte.
Anbei der Code, den wir bisher haben(Ohne die compareTo)

Ich hoffe ihr könnt uns/ mir helfen !!

MfG
Kingkas


```
import java.*;
import java.math.*;
import java.util.*;
import java.awt.*;
import java.io.*;
import java.lang.*;

public class SearchEngine
{
   public static void main(String[] args) 
   {
                    
           		
      		System.out.println( "Titelsuche :: Bitte geben sie einen Suchbegriff ein!" );
      		System.out.print("Suche: ");
    		
    				 try
     						{
     							BufferedReader in = new BufferedReader(
                  						        new InputStreamReader( System.in ) );
      						String search = in.readLine();
      						
      						      						
      					  FileInputStream inFile = new FileInputStream("Bibliothek.txt"); // <- da sind die namen etc drin
            		
                
             	   	int ch=0;
              	 	while((ch = inFile.read())> -1){
                        StringBuffer buf = new StringBuffer();  
                        buf.append((char)ch);
                        
												
												
                        System.out.print(buf.toString());
                      	
 											
                    }
                  	}catch( Exception e ){
                  	
       System.out.println( "An Exception has occured" + e.getMessage() );
     }
      		

   }
}
```


----------



## Thomas Darimont (9. Januar 2006)

Hallo!


```
/**
  * 
  */
 package de.tutorials;
 
 import java.io.BufferedReader;
 import java.io.File;
 import java.io.FileReader;
 import java.io.LineNumberReader;
 import java.util.Scanner;
 
 /**
  * @author Tom
  * 
  */
 public class FileSearchExample {
 	/**
 	 * @param args
 	 */
 	public static void main(String[] args) throws Exception {
 		File file = new File("c:/bib.txt");
 
 		System.out.print("Please enter a keyword to search for: ");
 		Scanner scanner = new Scanner(System.in);
 		String keyword = scanner.nextLine().toLowerCase();
 		scanner.close();
 
 		LineNumberReader lineNumberReader = new LineNumberReader(
 			    new BufferedReader(new FileReader(file)));
 		String line;
 
 		while ((line = lineNumberReader.readLine()) != null) {
 			if (line.toLowerCase().indexOf(keyword) >= 0) {
 			    System.out.println("Found: " + line + " @ row: "
 					    + lineNumberReader.getLineNumber());
 			}
 		}
 		lineNumberReader.close();
 	}
 }
```
 
 Bib.txt:

```
Schroedinger's Kittens / and the search for reality
 The Undivided Universe / An ontological interpretation of quantum theory
 The Meaning of Quantum Theory
 Conscious Mind in the Physical World
 Conceptual Foundations of Quantum Mechanics
 Quantum Physics: Illusion or Reality?
 The Ghost in the Atom / A discussion of the mysteries of quantum physics
 The Quantum World
 In Search of Schroedinger's Cat / Quantum physics and reality
 Order out of Chaos
 The Enigma of Time
 The Cosmic Code / quantum physics as the language of nature
```
 

```
Please enter a keyword to search for: Schroe
 Found: Schroedinger's Kittens / and the search for reality @ row: 1
 Found: In Search of Schroedinger's Cat / Quantum physics and reality @ row: 9
```
 
 Gruß Tom


----------



## KingKas (9. Januar 2006)

kurze frage.

wo gibt es das package


----------



## elmato (10. Januar 2006)

Welches package? meinst du de.tutorials? Das ist ein frei von Thomas vergebener Name, du kannst es dir wie Ordner vorstellen...
mehr dazu unter google 
mfg
elmato

Wenn du den Code benutzen willst einfach ohne die package anweisung kopieren...


----------



## KingKas (14. Januar 2006)

jo hab ich dann auch bemerkt!

Danke nochmal für das Programm aber ich hab da noch ne Frage! Und zwar meinte unser Lehrer, wir sollen die Suche jetz noch nach Autor, Titel, Jahr und kA was aufteilen. Also für jedes n einzelnes Programm, da das in dem GUI dann so angesteuert werden soll.
Wie soll das gehn ?


----------

