/*** 路径是否可以访问* @param urlString* @return*/public static boolean isUrlAccessible(String urlString) {try {URL url = new URL(urlString);HttpURLConnection connection = (HttpURLConnection) url.openConnection();connection.setRequestMethod("HEAD"); // 使用HEAD方法进行请求,以节省带宽connection.setConnectTimeout(3000); // 设置连接超时时间connection.setReadTimeout(3000); // 设置读取超时时间int responseCode = connection.getResponseCode();// 判断响应码是否表示成功(200-399 范围内)return (200 <= responseCode && responseCode <= 399);} catch (Exception e) {e.printStackTrace(); // 出现异常,说明URL不可访问return false;}}/*** 获取文件大小* @param fileUrl 文件路径* @return* @throws IOException*/public static long getFileSize(String fileUrl) {Long fileSize = 0L;try {URL url = new URL(fileUrl);HttpURLConnection connection = (HttpURLConnection) url.openConnection();connection.setRequestMethod("HEAD");connection.connect();int responseCode = connection.getResponseCode();if (responseCode == HttpURLConnection.HTTP_OK) {String contentLength = connection.getHeaderField("Content-Length");if (contentLength != null) {fileSize = Long.parseLong(contentLength);}}}catch (Exception e){System.out.println("获取文件大小出错!错误原因:" + e.getMessage());fileSize = -1L; // 返回-1表示获取文件大小失败}return fileSize;}/*** 文件大小单位转换方法: B/KB/MB/GB* @param contentLength 文件大小* @return*/public static String fileUnitConversion(Long contentLength) {DecimalFormat df = new DecimalFormat("#.00");String fileSizeString;long fileSize = contentLength;if (fileSize < 1024) {fileSizeString = df.format((double) fileSize) + "B";} else if (fileSize < 1048576) {fileSizeString = df.format((double) fileSize / 1024) + "KB";} else if (fileSize < 1073741824) {fileSizeString = df.format((double) fileSize / 1048576) + "MB";} else {fileSizeString = df.format((double) fileSize / 1073741824) + "GB";}return fileSizeString;}