Hier ist der Code...
Ok! Hier ist der Code, den ich bisher geschrieben habe. Leider bin ich noch nicht so richtig mit den Klassen klargekommen. Man wird das ganze sicher viel eleganter schreiben können.
Es soll eine Suche im Internet durchgeführt werden und anschließend die Suchergebnisse nach dem Suchstring durchsucht werden und bei Erfolg zu jeder Seite den ersten Suchstring sowie vor- und nachgelagerte Worte.
Hier ist der Code:
import java.io.*;
import java.net.*;
public class ConsoleInputInt {
public static String readline() {
StringBuffer response = new StringBuffer();
try {
BufferedInputStream buff = new BufferedInputStream(System.in);
int in = 0;
char inChar;
do {
in = buff.read();
inChar = (char) in;
if (in != -1) {
response.append(inChar);
}
} while ((in != -1) & (inChar != '\n'));
buff.close();
return response.toString();
} catch (IOException e) {
System.out.println("Exception: " + e.getMessage());
return null;
}
}
public static void main(String[] arguments) {
System.out.print("\nWie heißt der Suchbegriff?");
String input = ConsoleInputInt.readString("");
System.out.println("\nDer Suchbegriff heißt, " + input);
System.out.println();
String Suche =
"http://de.search.yahoo.com/search/de?va=" + input + "&n=10";
System.out.print("Die Suche wird durchgeführt als \n" + Suche + "\n");
int laenge = Suche.length();
System.out.println(" ");
try {
DataOutputStream out =
new DataOutputStream(
new BufferedOutputStream(
new FileOutputStream("C:/Files/JH.txt")));
out.writeUTF(Suche);
out.close();
} catch (IOException e) {
}
try {
FileInputStream fout = new FileInputStream("C:/Files/JH.txt");
BufferedInputStream buff = new BufferedInputStream(fout);
int in = 0;
do {
in = buff.read();
if (in != -1)
System.out.print((char) (in));
} while (in != -1);
buff.close();
} catch (IOException e) {
System.out.println("Exception: " + e.getMessage());
}
try {
URL url = new URL(Suche);
Reader is = new InputStreamReader(url.openStream());
BufferedReader in = new BufferedReader(is);
String s;
while ((s = in.readLine()) != null) {
System.out.println(s);
try {
DataOutputStream out =
new DataOutputStream(
new BufferedOutputStream(
new FileOutputStream(
"C:/Files/JH2.txt",
true)));
out.writeUTF(s);
out.close();
} catch (IOException e) {
}
}
in.close();
} catch (MalformedURLException a) {
System.out.println("MalformedURLException: " + a);
} catch (IOException b) {
System.out.println("IOException: " + b);
}
}
private static String readString(String string) {
int ch;
String r = "";
boolean done = false;
while (!done) {
try {
ch = System.in.read();
if (ch < 0 || (char) ch == '\n')
done = true;
else if ((char) ch != '\r')
r = r + (char) ch;
} catch (java.io.IOException e) {
done = true;
}
}
return r;
}
}