import java.io.InputStream;
import java.net.URL;
public class URLTest {
public static boolean isUrlValid(String strLink) {
URL url;
try {
url = new URL(strLink);
HttpURLConnection connt = (HttpURLConnection)url.openConnection();
//也可以通过判断code码判断是否有效
//一般是返回200 但是不保证有些网站请求成功返回的不是200
int responseCode = connt .getResponseCode();
if(200 == responseCode){
//链接有效
}else{
//链接无效
}
connt.setRequestMethod("HEAD");
String strMessage = connt.getResponseMessage();
if (strMessage.compareTo("Not Found") == 0) {
return false;
}
connt.disconnect();
} catch (Exception e) {
return false;
}
return true;
}
}
可以使用Java中的URL类来判断URL是否有效。URL类提供了一个openConnection()方法,可以打开一个连接并返回一个URLConnection对象,该对象可以用来检查连接是否有效。
以下是一个示例代码:
import java.io.IOException;
import java.net.URL;
import java.net.URLConnection;
public class URLValidator {
public static void main(String[] args) {
String url = "https://www.google.com";
boolean isValid = isValidURL(url);
System.out.println("Is " + url + " valid? " + isValid);
}
public static boolean isValidURL(String url) {
try {
URLConnection conn = new URL(url).openConnection();
conn.connect();
return true;
} catch (IOException e) {
return false;
}
}
}
该代码将尝试打开指定的URL并检查是否有效。如果URL有效,则openConnection()方法将成功打开连接并返回URLConnection对象。如果URL无效,则会抛出IOException并返回false。