Android ASimpleCache缓存框架 获取缓存大小

     ASimpleCache是一款由杨福海大神开发的轻量级缓存框架,存取简单,使用方便,非常适合刚刚接触Android不久的萌新们(比如我)

     GitHub地址:https://github.com/yangfuhai/ASimpleCache

     由于只有一个java类,数据存取操作都被简化到了极致,而且面对不同类型的数据也有不同的共有方法,在这里就不罗嗦了

     在开发过程中,设置到缓存的内容肯定需要一个直观的缓存表现形式:获取缓存大小

     不知道是不是我下载的版本有问题还是其他原因,在ACache类里,我并没有找到直接获取缓存大小的可调用方法,这让获取缓存大小成了一尴尬的问题

     后来在各种搜索工具的帮助下,终于找到了我的ACache里所不具备的那一段代码:


     

/**
	 * 获取缓存大小
	 */
	public String CacheSize() {
		double size = mCache.cacheSize.get();
		double kiloByte = size / 1024;
		if (kiloByte < 1) {
			return size + " Byte";
		}

		double megaByte = kiloByte / 1024;
		if (megaByte < 1) {
			BigDecimal result1 = new BigDecimal(Double.toString(kiloByte));
			return result1.setScale(2, BigDecimal.ROUND_HALF_UP)
					.toPlainString() + " KB";
		}

		double gigaByte = megaByte / 1024;
		if (gigaByte < 1) {
			BigDecimal result2 = new BigDecimal(Double.toString(megaByte));
			return result2.setScale(2, BigDecimal.ROUND_HALF_UP)
					.toPlainString() + " MB";
		}

		double teraBytes = gigaByte / 1024;
		if (teraBytes < 1) {
			BigDecimal result3 = new BigDecimal(Double.toString(gigaByte));
			return result3.setScale(2, BigDecimal.ROUND_HALF_UP)
					.toPlainString() + " GB";
		}

		BigDecimal result4 = new BigDecimal(teraBytes);
		return result4.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()
				+ " TB";
	}

     这个方法可以直接调用,并且返回一个类型为String的缓存大小字符串,要使用的时候只需如下操作即可获取:

ACache aCache = ACache.get(this);
String CacheSize = "缓存大小:" + aCache.CacheSize();

    So,如果你的代码里也没有这个方法而导致无法获取缓存大小,请加入。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值