21xrx.com
2024-12-28 11:40:15 Saturday
登录
文章检索 我的文章 写文章
如何使用Java下载文件:代码案例及详细教程
2023-06-16 16:01:39 深夜i     --     --

在 Java 中,下载文件可能是最常见的操作之一。无论是从 Web 服务器下载文件,还是从 FTP 服务器或其他资源下载文件,Java 都提供了一种简便的方法来实现。

下面展示了如何使用 Java 下载文件的代码案例,同时提供了详细的教程,包括:

1. 使用 Java URL 类下载文件的方法

2. 使用 Apache Commons IO 库下载文件的方法

3. 使用 Java NIO 下载文件的方法

代码案例:

1. 使用 Java URL 类下载文件的方法


import java.io.*;

import java.net.URL;

public class FileDownloader {

  public static void downloadFile(String fileURL, String fileName) throws IOException {

    URL url = new URL(fileURL);

    InputStream inputStream = url.openStream();

    OutputStream outputStream = new FileOutputStream(fileName);

    byte[] buffer = new byte[2048];

    int length;

    while ((length = inputStream.read(buffer)) != -1) {

      outputStream.write(buffer, 0, length);

    }

    inputStream.close();

    outputStream.close();

  }

}

下载与以下 URL 对应的文件:


String fileURL = "http://www.example.com/file.pdf";

String fileName = "file.pdf";

FileDownloader.downloadFile(fileURL, fileName);

2. 使用 Apache Commons IO 库下载文件的方法


import org.apache.commons.io.FileUtils;

import java.io.IOException;

import java.net.URL;

public class FileDownloader {

  public static void downloadFile(String fileURL, String fileName) throws IOException {

    URL url = new URL(fileURL);

    FileUtils.copyURLToFile(url, new File(fileName));

  }

}

下载与以下 URL 对应的文件:


String fileURL = "http://www.example.com/file.pdf";

String fileName = "file.pdf";

FileDownloader.downloadFile(fileURL, fileName);

3. 使用 Java NIO 下载文件的方法


import java.io.IOException;

import java.net.URL;

import java.nio.channels.Channels;

import java.nio.channels.ReadableByteChannel;

import java.nio.file.Files;

import java.nio.file.Path;

import java.nio.file.Paths;

public class FileDownloader {

  public static void downloadFile(String fileURL, String fileName) throws IOException {

    URL website = new URL(fileURL);

    ReadableByteChannel rbc = Channels.newChannel(website.openStream());

    Path path = Paths.get(fileName);

    Files.createDirectories(path.getParent());

    FileOutputStream fos = new FileOutputStream(fileName);

    fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);

    fos.close();

    rbc.close();

  }

}

下载与以下 URL 对应的文件:


String fileURL = "http://www.example.com/file.pdf";

String fileName = "file.pdf";

FileDownloader.downloadFile(fileURL, fileName);

关键词:

1. Java 下载文件

2. URL 类下载文件

3. Apache Commons IO 下载文件

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复