2017-01-10 1 views
0

안녕하세요, 여기 조금 문제가 있습니다. 저는 학교에서 파일 쓰기를하고 있으며 웹 페이지를 읽는 데 어려움을 겪고 있습니다. 어떻게 할 수 있습니까? JSoup과 아파치 플러그인을 가지고 가봤지만 둘 다 작동하지는 않지만 순수한 가져 오기를 사용해야한다.mIn java, 어떻게 내 웹 페이지를 BufferedReader에로드 할 것인가?

나는 코딩에 멍청한 점이 많으므로 아마도 몇 가지 오류가있을 것이다. 다음은 내 코드입니다 :

URL oracle = new URL("http://www.oracle.com/"); 
    BufferedReader br = new BufferedReader(new InputStreamReader(oracle.openStream())); 

    String inputLine; 
    while ((inputLine = br.readLine()) != null){ 
     System.out.println(inputLine); 
    } 
    br.close(); 

프로그램에서 더 출력이 없다 이전 I 출력을 관리하지만, 그러나 나는 아이러니하게도 그 문제에 대한 수정을 찾고, 그 코드를 삭제, HTML의 형태였다.

어떤 도움이나 해결책이라도 대단히 감사하겠습니다! 정말 고마워요!

+0

_mine이 (가) 인쇄하지 않는다는 것은 무엇을 의미합니까? –

+0

@SotiriosDelimanolis 나는 매우 피곤하다. 내 코드/솔루션 의미 – Samuelf80

+0

코드가 리디렉션을 따르지 않습니다. 'https : // www.oracle.com/index.html'을보십시오. – shmosel

답변

2

코드 예는 Reading Directly from a URL이지만 튜토리얼은 오래된 것입니다. http://www.oracle.comhttps://www.oracle.com/으로 리디렉션되지만 리디렉션을 따르지는 않습니다.

리디렉션하지 않는 URL을 사용하는 경우 http://www.google.com처럼 코드가 작동하는 것을 볼 수 있습니다.

리디렉션을 처리하는 더 강력한 프로그램을 원할 경우 더 많은 기능을 사용할 수 있으므로 URL 대신 HttpURLConnection을 사용하는 것이 좋습니다.

+0

경고문을 읽지 않는다면 google ('http : // www.google.com')에 대한 URL이 미국 이외의 지역에서 액세스 할 경우 현지화 된 버전/사이트로 리디렉션 될 수 있습니다. (즉, 영국에서 https : // www.google.co.uk로 리디렉션 될 수 있음) – ochi

+1

좋은 지적. 많은 현대 웹 사이트가 한 방향으로 또는 다른 방향으로 리디렉션을 사용할 가능성이 있습니다. 최선의 방법은 HTTP 응답을 알고있는 URL을 사용하는 것입니다. – Matt

+0

그것은 작동합니다! 하지만 이제는 인쇄 할 수 없습니다. 모든 것이 stringbuilder 및 문자열로 인쇄 될 때 HTML로 포맷됩니다. html 태그를 사용하거나 사용하지 않고 stringbuilder를 시도했지만 사용할 수는 없습니다. – Samuelf80

관련 문제