打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
java 文件下载

import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Scanner;

public class DownFile2
{
  public static void main(String[] paramArrayOfString)
  {
    Scanner localScanner = new Scanner(System.in);
    System.out.println("请选择:1-单文件下载;2-批量下载");
    String str = localScanner.next();

    if (str.equals("1"))
      oneDwon(localScanner, "n");
    else if (str.equals("2"))
      moreDown(localScanner);
  }

  private static void moreDown(Scanner paramScanner)
  {
    System.out.println("请输入地址:(*表示!)");
    String str1 = paramScanner.next();
    System.out.print("开始数字:");
    int i = paramScanner.nextInt();
    System.out.print("结束数字:");
    int j = paramScanner.nextInt();
    System.out.println("正在下载,请稍后。。。");
    for (int k = i; k <= j; k++) {
      String str2 = str1.replaceAll("\\*", String.valueOf(k));
      redStream(str2);
    }
    System.out.println("下载完毕!");
  }

  public static void oneDwon(Scanner paramScanner, String paramString) {
    do {
      System.out.println("请输入地址:");
      String str = paramScanner.next();
      redStream(str);
      System.out.println("是否继续(y/n)");
      paramString = paramScanner.next();
    }while (paramString.toLowerCase().equals("y"));
  }

  private static void redStream(String paramString)
  {
    InputStream localInputStream = null;
    HttpURLConnection localHttpURLConnection = null;
    try {
      URL localURL = new URL(paramString.trim());
      localHttpURLConnection = (HttpURLConnection)localURL.openConnection();
      localHttpURLConnection.connect();
      String str = paramString.substring(paramString.lastIndexOf("/") + 1);
      FileOutputStream localFileOutputStream = new FileOutputStream("download\\" + str);
      if (localHttpURLConnection.getResponseCode() == 200)
      {
        System.out.println("访问地址成功!");
        localInputStream = localHttpURLConnection.getInputStream();
        int j = 0;
        byte[] arrayOfByte = new byte[8192];
        System.out.println("正在下载文件,请稍后。。。");
        int i;
        while ((i = localInputStream.read(arrayOfByte, 0, 8192)) != -1) {
          localFileOutputStream.write(arrayOfByte, 0, i);
          j += i;
          System.out.println("已完成" + j);
        }
        System.out.println(str + "下载成功!");
      }
    } catch (Exception localException) {
      System.out.println("Exception:" + localException.getMessage());
    }
  }
}

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
java web 处理大量用户并发提交的简单思路:队列加定时提交
兔子视频根据url获取内容
《Java 程序设计》模拟试题
java正则表达式去掉string中的回车换行符空格
java去除字符串中的空格、回车、换行符、制表符
java 字符串,字符数组,list间的转化
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服