Je cherche une opportunité d’ouvrir une URL en Java.
URL url = new URL("http://maps.google.at/maps?saddr=4714&daddr=Marchtrenk&hl=de");
InputStream is = url.openConnection().getInputStream();
BufferedReader reader = new BufferedReader( new InputStreamReader( is ) );
String line = null;
while( ( line = reader.readLine() ) != null ) {
System.out.println(line);
}
reader.close();
J'ai trouvé ça comme ça.
Je l'ai ajouté dans mon programme et l'erreur suivante s'est produite.
The method openConnection() is undefined for the type URL
(par url.openConnection ())
Quel est mon problème?
J'utilise un serveur Tomcat avec des servlets, ...
public class UrlContent{
public static void main(String[] args) {
URL url;
try {
// get URL content
String a="http://localhost:8080/TestWeb/index.jsp";
url = new URL(a);
URLConnection conn = url.openConnection();
// open the stream and put it into BufferedReader
BufferedReader br = new BufferedReader(
new InputStreamReader(conn.getInputStream()));
String inputLine;
while ((inputLine = br.readLine()) != null) {
System.out.println(inputLine);
}
br.close();
System.out.println("Done");
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
String url_open ="http://javadl.Sun.com/webapps/download/AutoDL?BundleId=76860";
Java.awt.Desktop.getDesktop().browse(Java.net.URI.create(url_open));
Cela fonctionne pour moi . S'il vous plaît vérifier si vous utilisez les bonnes importations?
import Java.io.BufferedReader;
import Java.io.InputStream;
import Java.io.InputStreamReader;
import Java.net.URL;
Le code suivant devrait fonctionner,
URL url = new URL("http://maps.google.at/maps?saddr=4714&daddr=Marchtrenk&hl=de");
InputStream is = url.openConnection().getInputStream();
BufferedReader reader = new BufferedReader( new InputStreamReader( is ) );
String line = null;
while( ( line = reader.readLine() ) != null ) {
System.out.println(line);
}
reader.close();
Êtes-vous sûr d'utiliser la classe Java.net.URL
? Vérifiez vos déclarations d'importation.
Il peut être plus utile d’utiliser une bibliothèque client http telle que this
Il y a plus de choses comme l'accès refusé, le document déplacé, etc. à gérer lorsqu'il s'agit de http.
(cependant, il est peu probable dans ce cas)
Si vous voulez juste ouvrir la page Web, je pense que moins est plus dans ce cas:
import Java.awt.Desktop;
import Java.net.URI; //Note this is URI, not URL
class BrowseURL{
public static void main(String args[]) throws Exception{
// Create Desktop object
Desktop d=Desktop.getDesktop();
// Browse a URL, say google.com
d.browse(new URI("http://google.com"));
}
}
}
J'ai trouvé cette question en cherchant sur Google. Notez que si vous souhaitez simplement utiliser le contenu de l'URI via quelque chose comme une chaîne, envisagez d'utiliser la méthode IOUtils.toString()
d'Apache.
Par exemple, un exemple de ligne de code pourrait être:
String pageContent = IOUtils.toString("http://maps.google.at/maps?saddr=4714&daddr=Marchtrenk&hl=de", Charset.UTF_8);