📄 downthread.java~1~
字号:
package com;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2009</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
public class DownThread implements Runnable{
String url = "";
File file;
int startPosition;
int endPosition;
MultiDownload down;
int i;
public DownThread(String url,File file,int startPosition,int endPosition,MultiDownload down,int i){
this.url = url;
this.file = file;
this.startPosition = startPosition;
this.endPosition = endPosition;
this.down = down;
this.i = i;
}
public void run(){
try{
URL downUrl = new URL(url);
HttpURLConnection connection = (HttpURLConnection)downUrl.openConnection();
InputStream is = connection.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
FileOutputStream out = new FileOutputStream(file);
byte buf[] = new byte[1024];
int size = -1;
int count = 0;
bis.skip(startPosition+1);
while ((size = bis.read(buf, 0, 1024)) > 0) {
if ((startPosition + size) >= endPosition)
size = endPosition - startPosition;
out.write(buf, 0, size);
startPosition += size;
count += size;
}
bis.close();
out.close();
connection.disconnect();
}catch(Exception e){
e.printStackTrace();
}
down.isStop[i] = true;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -