使用 Java 确定 Internet 上的文件大小
确定 Internet 上的文件大小似乎有点棘手,但这是一项非常简单且容易的任务。Java 提供了一些可用于给定任务的内置功能。在本文中,我们将讨论如何连接到 Internet 并获取给定文件的大小。
如何使用 Java 在 Internet 上建立连接
URL
现代 Internet 就是万维网。Tim Berners-Lee 发明了一种在 Web 上定位所有资源的方法,他将其命名为统一资源定位器。它提供了在 Internet 上明确识别资源的功能。 URL 有四个组成部分 -
协议
主机名或 IP 地址
端口号
路径
Java 网络的 URL 类用于通过 URL 建立连接或定位 Internet 上的资源。此类抛出 MalformedURLException。
语法
URL nameOfObject = new URL( "URLspecifier" );
其中,
URLspecifier 是实际的 URL,或者我们可以说是资源的链接。它必须用双引号括起来。
要访问 URL 的内容信息,我们需要使用"URL"类的内置方法"openConnection()"定义"URLConnection"类的对象。
URLConnection
它是一个用于访问指定资源(即 Internet 上的 URL)信息的类。首先,它在检索 URL 之前检查其属性。为了检索有关指定资源大小的信息,它定义了一个名为"getContentLengthLong()"的方法。它与"URLConnection"类的对象一起使用。
用于检查 Internet 上文件大小的 Java 程序
需要遵循的步骤
首先,定义 URL 类的对象以及给定文件的链接。
使用"URL"类的对象创建"URLConnection"类的对象。
使用"getContentLengthLong()"检索文件大小并将其存储在名为"fileSize"的 long 类型的变量中。
现在,我们将收到的文件大小除以 1024 以获得文件的大小(以千字节为单位)。
最后,借助 if-else 块打印结果。
示例
import java.net.*; public class UCDemo { public static void main(String args[]) throws Exception { try { // 文件链接 URL shareLink = new URL("https://www.tutorialspoint.com/java/pdf/java_networking.pdf"); // 与文件建立连接 URLConnection urlConn = shareLink.openConnection(); // 检索文件类型 System.out.println("内容类型:" + urlConn.getContentType()); // 检索文件大小 long fileSize = urlConn.getContentLengthLong(); long kb = fileSize / 1024; if(fileSize == -1) { System.out.println("无法确定文件大小!!"); } else { System.out.println("给定文件的大小(KB):" + kb + " KB"); } } catch(Exception exp) { System.out.println("Something went wrong!! Please check the file type!!"); } } }
输出
Type of the content: application/pdf Size of the given file in KB: 72 KB
结论
IP 地址是 32 位或 128 位无符号数字,用于唯一标识 Internet 上的设备。IP 主机的名称比数字地址更容易记住。因此,URL 以字符串的形式出现。在本文中,我们了解了 URL 和 URLConnection 类,它们有助于与万维网建立连接。这两个类都可以在"java.net"包中找到。