在项目实际开发中,遇到了网页图片展示的问题,前端要求如果图片不能访问或者不存在,直接返回null,那怎样检测图片是否可用呢?
有两种方法可以实现:
1.利用URLConnection获取访问返回状态码判断,具体代码为:
public static boolean checkImgExist(String urlString){
URL url;
URLConnection urlConnection;
try {
url = new URL(urlString);
urlConnection = url.openConnection();
int status = ((HttpURLConnection) urlConnection).getResponseCode();
if(status==200){
return true;
}
} catch (Exception e1) {
System.out.println("图片不存在!");
}
return false;
}
当状态码为200的时候,代表着图片可以获取,当状态码不是的时候,则获取不到
2.利用UrlResource检测数据是否存在,这种方法最为简单:
boolean isExist = new UrlResource(url).exists()
isExist=true,代表存在,false意为不存在,
注:这两种方式只针对于http的有效,对https无效