平时开发中,对于文件无论是通过File类的length()还是MultipartFile的size()获取到文件大小单位都是byte,如果想对文件大小进行换算,根据不同大小按不同单位进行展示,可以使用以下工具方法:
/**
* 格式化文件大小
* @param fileLength 单位b
* @return
*/
public static String formetFileSize(Long fileLength) {
String fileSizeString = "";
if (fileLength == null) {
return fileSizeString;
}
DecimalFormat df = new DecimalFormat("#.00");
if (fileLength < 1024) {
fileSizeString = df.format((double) fileLength) + "B";
}
else if (fileLength < 1048576) {
fileSizeString = df.format((double) fileLength / 1024) + "K";
}
else if (fileLength < 1073741824) {
fileSizeString = df.format((double) fileLength / 1048576) + "M";
}
else {
fileSizeString = df.format((double) fileLength / 1073741824) + "G";
}
return fileSizeString;
}
希望对你有帮助!