java下载文件的方式

Java 提供了多种下载文件的方法。以下是几种常用的方式:

  1. 使用 URL.openStream()
    URL url = new URL("https://example.com/file.txt");
    URLConnection connection = url.openConnection();
    InputStream inputStream = connection.getInputStream();
    FileOutputStream fileOutputStream = new FileOutputStream("file.txt");
    byte[] buffer = new byte[1024];
    int len;
    while ((len = inputStream.read(buffer)) > 0) {
    fileOutputStream.write(buffer, 0, len);
    }登录后复制
  2. 使用 HttpClient
    HttpClient client = HttpClientBuilder.create().build();
    HttpGet request = new HttpGet("https://example.com/file.txt");
    HttpResponse response = client.execute(request);
    HttpEntity entity = response.getEntity();
    InputStream inputStream = entity.getContent();
    FileOutputStream fileOutputStream = new FileOutputStream("file.txt");
    byte[] buffer = new byte[1024];
    int len;
    while ((len = inputStream.read(buffer)) > 0) {
    fileOutputStream.write(buffer, 0, len);
    }登录后复制
  3. 使用 URLConnection
    立即学习“Java免费学习笔记(深入)”;
    URL url = new URL("https://example.com/file.txt");
    URLConnection connection = url.openConnection();
    connection.setDoInput(true);
    connection.connect();
    InputStream inputStream = connection.getInputStream();
    FileOutputStream fileOutputStream = new FileOutputStream("file.txt");
    byte[] buffer = new byte[1024];
    int len;
    while ((len = inputStream.read(buffer)) > 0) {
    fileOutputStream.write(buffer, 0, len);
    }登录后复制
  4. 使用 Java NIO
    Path path = Paths.get("file.txt");
    FileChannel fileChannel = FileChannel.open(path, StandardOpenOption.WRITE);
    SocketChannel socketChannel = SocketChannel.open();
    socketChannel.connect(new InetSocketAddress("example.com", 80));
    ByteBuffer buffer = ByteBuffer.allocate(1024);
    while ((len = socketChannel.read(buffer)) > 0) {
    fileChannel.write(buffer, 0, len);
    }登录后复制以上就是Java如何实现下载文件的几种方式的详细内容,更多请关注php中文网其它相关文章!