2012-04-02 10 views
12

Poszukuję możliwości otwarcia adresu URL w języku Java.Otwarty adres URL w języku Java, aby uzyskać zawartość

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(); 

Znalazłem tę drogę.

Dodałem go do mojego programu i wystąpił następujący błąd.

The method openConnection() is undefined for the type URL 

(przez url.openConnection())

Jaki jest mój problem?

użyć tomcat-serwer z serwletów, ...

+0

wypróbuj ten: http://docs.oracle.com/javase/tutor ial/networking/urls/readingURL.html – shem

+0

Problem polega na tym, * że * prawdopodobnie nie używasz 'java.net.URL', ale inną klasę o nazwie' URL'. –

+1

dzięki .... to działa;) –

Odpowiedz

2

Czy na pewno za pomocą klasy java.net.URL? Sprawdź swoje instrukcje importowania.

5

To działa dla mnie. Proszę sprawdzić, czy używasz właściwego importu?

import java.io.BufferedReader; 
import java.io.InputStream; 
import java.io.InputStreamReader; 
import java.net.URL; 
1

To może być bardziej przydatne do korzystania z biblioteki klienta http jak takich jak this

Są rzeczy jak odmowa dostępu, dokument przeniesiony itp obsłużyć gdy ma do czynienia z http.

(choć jest to mało prawdopodobne w tym przypadku)

13
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(); 
     } 

    } 
} 
8
String url_open ="http://javadl.sun.com/webapps/download/AutoDL?BundleId=76860"; 
java.awt.Desktop.getDesktop().browse(java.net.URI.create(url_open)); 
4

następujący kod powinien działać,

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(); 
1

Jeśli chcesz po prostu otworzyć stronę internetową, myślę, że mniej jest więcej w tym przypadku:

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")); 

     } 
    } 
} 
Powiązane problemy