Java中文件长度的转换
我们使用java.io.File对象创建一个具体的文件句柄,然后就可以通过这个对象
获取该文件的一些信息了, 但是在我们得到文件长度的时候,返回的是一个long类型的整数,
单位是byte,也就是字节。有时候当文件过大的时候,我们就需要转换成Mb或者
Gb。下面写了个函数实现这个功能:
File objFile = new File("c:\\cQQ.rar");
long filesize=objFile.getLength();
static String convertFileSize(long filesize)
{
String strUnit="Bytes";
String strAfterComma="";
int intDivisor=1;
if(filesize>=1024*1024)
{
strUnit = "MB";
intDivisor=1024*1024;
}
else if(filesize>=1024)
{
strUnit = "KB";
intDivisor=1024;
}
if(intDivisor==1) return filesize + " " + strUnit;
strAfterComma = "" + 100 * (filesize % intDivisor) / intDivisor ;
if(strAfterComma=="") strAfterComma=".0";
return filesize / intDivisor + "." + strAfterComma + " " + strUnit;
}