java 关于号码的工具类,包括把字节转换成MB及以上,判断是不是纯数字,以及转换服务端发下来的图片大小成宽高比(450 * 550)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 关于号码的工具类,包括把字节转换成MB及以上,判断是不是纯数字,以及转换服务端发下来的图片大小成宽高比(450 * 550)相关的知识,希望对你有一定的参考价值。

public class NumberUtils {

    /**
     * 文件大小格式转换
     *
     * @param size
     * @return
     */
    public static final String fileSizeKb2Mb(double size) {
        size /= 1024.0;
        String hrSize = "";
        // 法语等语言标点会显示逗号,强制为china,显示点号
        DecimalFormat dec = null;
        try {
            dec = (DecimalFormat) NumberFormat.getInstance(Locale.CHINA);
            dec.applyPattern("0.0");
        } catch (Exception e) {
            e.printStackTrace();
            dec = new DecimalFormat("0.0");
        }
        double m = size / 1024.0;
        double g = size / 1048576.0;
        double t = size / 1073741824.0;
        if (t > 1) {
            hrSize = dec.format(t).concat("T");
        } else if (g > 1) {
            hrSize = dec.format(g).concat("G");
        } else if (m > 1) {
            hrSize = dec.format(m).concat("M");
        } else {
            hrSize = dec.format(size).concat("K");
        }
        return hrSize;
    }

    /**
     * 传入服务器端过来的字符串{图片尺寸 使用宽*高的方式传参如 480*480}
     * 返回宽/高比
     * @return
     */
    public static float getPicWHRadio(String des, float defaultRadio) {
        if (TextUtils.isEmpty(des)) {
            return defaultRadio;
        }
        int index = des.indexOf("*");
        if (index <= 0) {
            return defaultRadio;
        }
        try {
            int width = Integer.valueOf(des.substring(0, index).trim());
            int height = Integer.valueOf(des.substring(index + 1).trim());
            return width / (float) height;
        } catch (Exception e) {
            Debug.e(e.getMessage());
            return defaultRadio;
        }
    }
    /**
     * 判断输入的字符串是不是纯数字
     */
    public static boolean isNumeric(String str) {
        Pattern pattern = Pattern.compile("[0-9]*");
        return pattern.matcher(str).matches();
    }
}

以上是关于java 关于号码的工具类,包括把字节转换成MB及以上,判断是不是纯数字,以及转换服务端发下来的图片大小成宽高比(450 * 550)的主要内容,如果未能解决你的问题,请参考以下文章

最全面的Java字节byte操作,处理Java基本数据的转换及进制转换操作工具,流媒体及java底层开发项目常用工具类

将Long类型字节大小数据转换成标准的视频大小格式

Serializable深入理解

字节怎样转换成MB

关于 JDK jre jvm

Java 解决Emoji表情过滤问题