(25)JAVA.IO--使用Java创建指定大小的空文件

断点下载的原理是这样的吗?

1,读取将要下载文件的文件大小信息

2,创建一个和要下载文件大小一致的空文件

3,创建一个用来存储被下载文件读取指针位置的临时文件

4,开始读取要下载文件并且将读取的内容写入到已经建立好的空文件中

5,读取到一定程度后将当前指针的位置存储到临时文件中,并不定时更新

6,当下载停止并重新开始后,找到建立的空文件(目前不为 空)和临时文件,取出临时文件中存储的指针位置

从该位置继续读取下载文件并以追加的方式写入到之前建立的空文件中

-------------------------------------------------------------------------------------
import java.io.File;
import java.io.RandomAccessFile;
 
/**
 * RandomAccessFile来实现创建指定大小的空文件
 * @author Koma
 *
 */
public class MyRandomAccessFile {
 
    /**
     * @param args
     */
    public static void main(String[] args){
        RandomAccessFile raf = null;
        try {
            File filename = new File("H:\\psb.jpg");
            long length = filename.length();
            //建立一个指定大小的空文件
            raf = new RandomAccessFile("H:\\psb.tmp", "rw");
            raf.setLength(length*10000);
            System.out.println( System.currentTimeMillis() );
        } catch (Exception e) {
        } finally {
            if ( raf != null ) {
                try {
                    raf.close();
                } catch (Exception e2) {
                }
            }
        }
    }
 
}


-------------------------------------------------------------------------------


猜你喜欢

转载自blog.csdn.net/pandajava/article/details/48652501