Java 在Internet上确定文件的大小

Java 在Internet上确定文件的大小

确定Internet上文件的大小似乎有些棘手,但其实是一个相当简单和容易的任务。Java提供了一些内置的功能,可以用于完成给定的任务。在本文中,我们将讨论如何建立与Internet的连接并获取给定文件的大小。

如何使用Java在Internet上建立连接

URL

现代互联网与万维网有关。Tim Berners-Lee发明了一种定位Web上所有资源的方法,他将其命名为统一资源定位符(URL)。它提供了一种在互联网上明确标识资源的功能。URL的组成部分有四个:

  • 协议

  • 主机名或IP地址

  • 端口号

  • 路径

Java网络的URL类用于通过URL的方式建立连接或定位Internet上的资源。这个类会抛出MalformedURLException异常。

语法

URL nameOfObject = new URL( “URLspecifier” );

其中,

URLspecifier 是资源的实际URL或链接。必须用双引号括起来。

要访问URL的内容信息,我们需要使用URL类的内置方法 openConnection() 来定义一个‘URLConnection’类的对象。

URLConnection

这是一个用于访问指定资源(即Internet上的URL)信息的类。首先,在检索URL之前,它会检查URL的属性。为了检索指定资源的大小信息,它定义了一个名为 getContentLengthLong() 的方法。它与‘URLConnection’类的对象一起使用。

Java程序检查Internet上文件的大小

需要按照的步骤

  • 首先,使用给定文件的链接定义一个URL类的对象。

  • 使用‘URL’类的对象创建一个‘URLConnection’类的对象。

  • 使用‘getContentLengthLong()’检索文件大小,并将其存储在名为‘fileSize’的long类型变量中。

  • 现在,我们将接收到的文件大小除以1024,以获取文件的大小(以千字节为单位)。

  • 最后,使用if-else代码块打印结果。

示例

import java.net.*;
public class UCDemo {
   public static void main(String args[]) throws Exception {   
      try {
         // link of file   
         URL shareLink = new URL("https://www.tutorialspoint.com/java/pdf/java_networking.pdf");
         // making connection with the file
         URLConnection urlConn = shareLink.openConnection(); 
         // retrieving type of the file
         System.out.println("Type of the content: " + urlConn.getContentType());
         // retrieving size of the file
         long fileSize = urlConn.getContentLengthLong();
         long kb = fileSize / 1024;
         if(fileSize == -1) {
            System.out.println("Cannot determine the Size of file!!");
         } else {
            System.out.println("Size of the given file in 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位的无符号数字,用于唯一标识互联网上的设备。记住IP主机的名称比记住数字地址容易。因此,URL采用字符串形式表示。在本文中,我们学习了URL和URLConnection类,它们有助于与全球网络建立连接。这两个类都可以在“java.net”包中找到。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程