zoukankan      html  css  js  c++  java
  • android 文件缓存工具类

    /**
    * Json数据缓存的工具类
    *
    */
    public class CacheDataSd {


    /**
    *
    * @param context 当前对象
    * @param dir 创建的文件
    * @param requesturl 标志字段
    * @param jsondata json数据
    */
    public static void SaveSDByteArray(Context context, String dir,
    String requesturl, String jsondata) {
    String Directory=context.getExternalCacheDir()+File.separator +dir+File.separator;
    //首先判断目录是否存在,再具体判断文件是否存在
    //加载完成进行存储
    File dirs=new File(Directory);
    File cac=new File(dirs,requesturl);
    if(dirs.exists() && dirs.length()>0){
    if(cac.exists() && cac.length()>0){
    //不做任何操作
    }else{
    try {
    byte[] data = jsondata.getBytes("utf-8");
    FileOutputStream outf;
    outf=new FileOutputStream(Directory+requesturl);
    BufferedOutputStream bufferout = new BufferedOutputStream(outf);
    bufferout.write(data);
    bufferout.flush();
    bufferout.close();
    } catch (Exception e) {
    e.printStackTrace();
    }
    }
    }else{
    dirs.mkdirs();
    try {
    byte[] data = jsondata.getBytes("utf-8");
    FileOutputStream outf;
    outf=new FileOutputStream(Directory+requesturl);
    BufferedOutputStream bufferout = new BufferedOutputStream(outf);
    bufferout.write(data);
    bufferout.flush();
    bufferout.close();
    } catch (Exception e) {
    e.printStackTrace();
    }
    }
    }

    /**
    *
    * @param context 当前对象
    * @param dir 创建的文件
    * @param requesturl 标志字段
    * @param jsondata json数据
    */
    public static byte[] ReadSDByteArray(Context context, String dir,
    String requesturl) {
    ByteArrayOutputStream out;
    try {
    BufferedInputStream in = new BufferedInputStream(
    new FileInputStream(context.getExternalCacheDir()+File.separator + dir + File.separator +requesturl));
    out = new ByteArrayOutputStream(1024);
    byte[] temp = new byte[1024];
    int size = 0;
    while ((size = in.read(temp)) != -1) {
    out.write(temp, 0, size);
    }
    in.close();
    byte[] content = out.toByteArray();
    return content;
    } catch (Exception e) {
    e.printStackTrace();
    return null;
    }
    }
    }

  • 相关阅读:
    Linux基础篇之软件源码包安装
    11-1 网络协议和管理
    bash-2 httpd服务的源码编译安装脚本
    8-1 文本三级剑客之sed
    9-3 磁盘存储与分区
    9-2 yum,dnf和apt
    9-1 软件包管理
    bash-1 初始化CentOS系统的初始化脚本
    3-3 man手册介绍
    5-3 文件权限
  • 原文地址:https://www.cnblogs.com/fgjTarget/p/4097626.html
Copyright © 2011-2022 走看看