日期:2014-05-20 浏览次数:21045 次
Thread downloader=new Thread(){
public void run(){
File file = new File(filesavePath);
if(!file.exists()){
System.out.println("文件不存在,创建");
file.createNewFile();}
Socket server = new Socket(serverIP, 8880);
RandomAccessFile raf = new RandomAccessFile(file, "rw");
// 通过Socket连接文件服务器
PrintWriter outtosocket = new PrintWriter(server
.getOutputStream());
;
outtosocket.println(downfilemessage);
outtosocket.flush();
InputStream netIn = server.getInputStream();
InputStream in = new DataInputStream(
new BufferedInputStream(netIn));
// 创建缓冲区缓冲网络数据
byte[] buf = new byte[20480];
int num = in.read(buf);
while (num != (-1)&&isStop!=true) //isStop(类的一个全局变量)初始化为false
{
raf.write(buf, 0, num);
raf.skipBytes(num);
num = in.read(buf);//继续从网络中读取文件
}
in.close();
raf.close();
server.close();
}
};
downloader.start();