2012-05-11 6 views
4

URL 목록을 조회하고 해당 URL이 있는지 먼저 알아야하는 Java 프로그램을 작성하고 있습니다. 나는 이것에 대해 어떻게 해야할지 모르겠다. 그리고 사용할 자바 코드를 찾을 수 없다.URL이 유효한지 또는 Java에 있는지 확인하십시오.

URL은 다음과 같다 :

http: //ip:port/URI?Attribute=x&attribute2=y 

이 유효한 경우 XML을 반환 내부 네트워크의 URL입니다.

누구나 일부 코드를 제안 할 수 있습니까?

+0

어떻게 당신이 편안하고 API를 문서화 할 유효하지 않습니다? – NimChimpsky

답변

1

연결을 열고 응답에 유효한 XML이 포함되어 있는지 확인하십시오. 너무 명백 했습니까? 아니면 다른 마술을 찾으십니까? 당신은 HttpURLConnection의를 사용하여 오류 상태를 확인 할 수 있습니다

5
  1. 서식의 URL 당신에게 예외를 제공 할 것입니다.
  2. URL이 활성화되어 있는지 확인하려면 URL을 누르십시오. 다른 방법은 없습니다.

URL에서 헤더를 요청하여로드를 줄일 수 있습니다.

9

httpURLConnection 만 사용할 수 있습니다. 유효하지 않은 경우 아무 것도 반환하지 않습니다.

HttpURLConnection connection = null; 
try{   
    URL myurl = new URL("http://www.myURL.com");   
    connection = (HttpURLConnection) myurl.openConnection(); 
    //Set request to header to reduce load as Subirkumarsao said.  
    connection.setRequestMethod("HEAD");   
    int code = connection.getResponseCode();   
    System.out.println("" + code); 
} catch { 
//Handle invalid URL 
} 

또는 CMD에서 보낸 것처럼 ping을 수행하고 응답을 녹음 할 수 있습니다.

String myurl = "google.com" 
String ping = "ping " + myurl 

try { 
    Runtime r = Runtime.getRuntime(); 
    Process p = r.exec(ping); 
    r.exec(ping);  
    BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream())); 
    String inLine; 
    BufferedWriter write = new BufferedWriter(new FileWriter("C:\\myfile.txt")); 

    while ((inLine = in.readLine()) != null) {    
      write.write(inLine); 
      write.newLine(); 
     } 
      write.flush(); 
      write.close(); 
      in.close();    
    } catch (Exception ex) { 
     //Code here for what you want to do with invalid URLs 
    } 
} 
+0

첫 번째 방법은 나를 위해 일하고 있습니다 ...이 도움을 많이 주셔서 감사합니다 ... 이제는 직접 전체 링크를 제공하여 다른 브라우저에서 열어 동일한 방식으로 내 브라우저에서 링크를 여는 오전 .... 다시 감사합니다 – Noman

+0

그것은 것입니다 나를 도와 줘. – d3m0li5h3r

3
package com.my; 

import java.io.IOException; 
import java.io.InputStream; 
import java.net.MalformedURLException; 
import java.net.URL; 
import java.net.UnknownHostException; 

public class StrTest { 

public static void main(String[] args) throws IOException { 

    try { 
     URL url = new URL("http://www.yaoo.coi"); 
     InputStream i = null; 

     try { 
      i = url.openStream(); 
     } catch (UnknownHostException ex) { 
      System.out.println("THIS URL IS NOT VALID"); 
     } 

     if (i != null) { 
      System.out.println("Its working"); 
     } 

    } catch (MalformedURLException e) { 
     e.printStackTrace(); 
      } 
     } 
    } 

출력 :이 URL은

관련 문제