📅  最后修改于: 2023-12-03 15:06:40.714000             🧑  作者: Mango
在Java中,我们可以使用java.io.File
和java.nio.file.Files
类来获取文件大小,并将其转化为字节、千字节和兆字节等不同的单位。下面是一个示例程序,可以用于获取给定文件大小,并按不同的单位返回大小值。
import java.io.File;
import java.nio.file.Files;
public class FileSizeExample {
// 获取文件大小,返回字节数
public static long getFileSizeInBytes(File file) {
return file.length();
}
// 获取文件大小,返回千字节数(KB)
public static double getFileSizeInKilobytes(File file) {
return (double) file.length() / 1024;
}
// 获取文件大小,返回兆字节数(MB)
public static double getFileSizeInMegabytes(File file) {
return (double) file.length() / (1024 * 1024);
}
public static void main(String[] args) {
// 用于测试的文件路径
String filePath = "D:/test.txt";
// 创建文件对象
File file = new File(filePath);
// 输出不同单位下的文件大小
System.out.println("文件大小(字节):" + getFileSizeInBytes(file));
System.out.println("文件大小(KB):" + getFileSizeInKilobytes(file));
System.out.println("文件大小(MB):" + getFileSizeInMegabytes(file));
}
}
在上面的示例程序中,我们定义了三个方法,分别表示获取文件大小的不同单位。getFileSizeInBytes
方法返回文件大小的字节数,此方法最为基础,getFileSizeInKilobytes
方法将字节数转化为千字节数(KB),getFileSizeInMegabytes
方法将字节数转化为兆字节数(MB)。
我们在main
方法中调用了这些方法,并输出了获取到的文件大小。
## 返回值说明
- `getFileSizeInBytes`: 返回 `long` 类型,表示文件大小的字节数。
- `getFileSizeInKilobytes`: 返回 `double` 类型,表示文件大小的千字节数(KB)。
- `getFileSizeInMegabytes`: 返回 `double` 类型,表示文件大小的兆字节数(MB)。