mit diesem code lade ich eine html, jsp, php, etc. -Seite runter. In dieser Datei will ich nach den gewünschten Informationen suchen.
in diesem fall schicke ich an leo.org das wort "umfrage" und würde jetzt gerne die antwort vom server nach der übersetzung für "umfrage"
durchsuchen und diese ausgeben...
wie mache ich das ?
in pho nutzt man hierzu die preg_match funktion, gibt es etwas ähnliches in java ?
in diesem fall schicke ich an leo.org das wort "umfrage" und würde jetzt gerne die antwort vom server nach der übersetzung für "umfrage"
durchsuchen und diese ausgeben...
wie mache ich das ?
in pho nutzt man hierzu die preg_match funktion, gibt es etwas ähnliches in java ?
Code:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
public class UrlConnecten {
URL url;
URLConnection conn;
BufferedReader in;
String adresse ="http://dict.leo.org/?search=umfrage&searchLoc=0&relink=on&spellToler=std§Hdr=on&tableBorder=1&cmpType=relaxed&lang=de";
public static void main(String[] args) {
long start = System.currentTimeMillis();
System.out.println("Startet...");
UrlConnecten test = new UrlConnecten();
test.urlErstellen(test.adresse);
//Verbindung herstellen, InputStream erstellen
try {
test.conn = test.url.openConnection();
//test.in = conn.getInputStream();
test.in =
new BufferedReader(
new InputStreamReader(test.conn.getInputStream()));
String line;
String antwort = "";
while ((line = test.in.readLine()) != null) {
//Server Antwort Beginn
//System.out.println(line);
antwort += line;
}
//Serverantwort Ende
//Verbindung schliessen
test.in.close();
//Verarbeitung
System.out.println(antwort);
test.scannen(antwort, "<title>", "</title>");
} catch (IOException e) {
e.printStackTrace();
}
long dauer = System.currentTimeMillis() - start;
System.out.println("Ende (" + String.valueOf(dauer) + " millisekunden)");
}
public void urlErstellen(String adresse){
//URL erstellen
try {
this.url = new URL(adresse);//suchseite
} catch (MalformedURLException me) {
me.printStackTrace();
}
}
public void scannen(String suche, String start, String ende){
/**
* Beispiel:
* test.scannen(antwort, "<title>", "</title>");
* test.scannen(antwort, "<head>", "</head>");
* test.scannen(antwort, "<div>", "</div>");
*
* Alternative: Suche mit Patterns
* [url]http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html[/url]
*/
int c = suche.indexOf(start);
int d = suche.indexOf(ende);
String treffer = suche.substring(c + start.length(),d);
System.out.println("Treffer: " + treffer);
}
}