def stream = new URL("http://sw.bos.baidu.com/sw-search-sp/software/ae80092c654/IQIYIsetup_1001_5.3.21.2659.exe").openStream()
def stream2 = new URL("http://sw.bos.baidu.com/sw-search-sp/software/ae80092c654/IQIYIsetup_1001_5.3.21.2659.exe").openConnection()
def total = stream2.getContentLength()
println "初始文件大小为:"+(total/1024/1024)+"M"
def len
def hasRead=0;
byte[] arr=new byte[1024]
def out=new FileOutputStream("IQIYIsetup_1001_5.3.21.2659.exe")
def lastResult=0
while ((len=stream.read(arr))!=-1){
out.write(arr,0,len)
hasRead+=len
def decimal = hasRead/total*100+""
if(!decimal.equals("100"))
decimal=decimal.substring(0,decimal.indexOf("."))
if(lastResult.equals(Integer.parseInt(decimal))){
lastResult++
println "下载进度:"+ decimal+"%"
}
}
stream.close()
out.close()
println("下载完成!")
控制台输出如下:
初始文件大小为:36.3428955078125M
下载进度:0%
下载进度:1%
下载进度:2%
下载进度:3%
下载进度:4%
.
.
.
.
Groovy下载文件并实时显示下载进度
最新推荐文章于 2023-02-22 19:55:42 发布