Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package com.qiniu.android.storage.persistent;
 
 
 import java.io.File;
实现分片上传时上传进度的接口方法
public final class FileRecorder implements Recorder {
    public String directory;
    public FileRecorder(String directorythrows IOException {
        this. = directory;
        File f = new File(directory);
        if (!f.exists()) {
            boolean r = f.mkdirs();
            if (!r) {
                throw new IOException("mkdir failed");
            }
            return;
        }
        if (!f.isDirectory()) {
            throw new IOException("does not mkdir");
        }
    }

    
纪录分片上传进度

Parameters:
key 上传文件进度文件保存名
data 上传文件的进度数据
    @Override
    public void set(String keybyte[] data) {
        File f = new File(, UrlSafeBase64.encodeToString(key));
        FileOutputStream fo = null;
        try {
            fo = new FileOutputStream(f);
            fo.write(data);
        } catch (IOException e) {
            e.printStackTrace();
        }
        if (fo != null) {
            try {
                fo.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    
获取分片上传进度

Parameters:
key 上传文件进度文件保存名
    @Override
    public byte[] get(String key) {
        File f = new File(, UrlSafeBase64.encodeToString(key));
        FileInputStream fi = null;
        byte[] data = new byte[(intf.length()];
        int read = 0;
        try {
            fi = new FileInputStream(f);
            read = fi.read(data);
        } catch (IOException e) {
            e.printStackTrace();
        }
        if (fi != null) {
            try {
                fi.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        if (read == 0) {
            return null;
        }
        return data;
    }

    
删除已上传文件的进度文件

Parameters:
key 上传文件进度文件保存名
    @Override
    public void del(String key) {
        File f = new File(, UrlSafeBase64.encodeToString(key));
        f.delete();
    }
New to GrepCode? Check out our FAQ X