原文:http://zetcode.com/java/filesize/
在本教程中,我们展示了几种方法来确定 Java 中文件的大小。
文件大小用于衡量计算机文件包含多少数据,或者消耗其多少存储空间。 文件大小通常以字节表示。
在 Java 中,我们可以使用File,FileChannel,Files和 Apache Commons 的FileUtils确定文件的大小。 根据经验,在新代码中,我们应该使用Files类。
words.txt
green, chair, pen, computer, apple, book, scissors
在我们的示例中,我们将使用位于src/main/resources目录中的words.txt文件。
使用File的文件大小
File的length()方法返回文件大小。 这是找出 Java 文件大小的最古老的 API。
JavaFileSizeEx.java
package com.zetcode;import java.io.File;public class JavaFileSizeEx {public static void main(String[] args) {String fileName = "src/main/resources/words.txt";File f = new File(fileName);long fileSize = f.length();System.out.format("The size of the file: %d bytes", fileSize);}}
该代码示例使用File的length()方法确定文件大小。
使用FileChannel的文件大小
FileChannel具有size()方法来确定文件的大小。
JavaFileSizeEx2.java
package com.zetcode;import java.io.IOException;import java.nio.channels.FileChannel;import java.nio.file.Path;import java.nio.file.Paths;public class JavaFileSizeEx2 {public static void main(String[] args) throws IOException {String fileName = "src/main/resources/words.txt";Path filePath = Paths.get(fileName);FileChannel fileChannel = FileChannel.open(filePath);long fileSize = fileChannel.size();System.out.format("The size of the file: %d bytes", fileSize);}}
该代码示例使用FileChannel的size()方法确定文件大小。
使用Files的文件大小
Files具有size()方法来确定文件的大小。 这是最新的 API,建议用于新的 Java 应用。
JavaFileSizeEx3.java
package com.zetcode;import java.io.IOException;import java.nio.file.Files;import java.nio.file.Path;import java.nio.file.Paths;public class JavaFileSizeEx3 {public static void main(String[] args) throws IOException {String fileName = "src/main/resources/words.txt";Path filePath = Paths.get(fileName);long fileSize = Files.size(filePath);System.out.format("The size of the file: %d bytes", fileSize);}}
该代码示例使用Files' size()方法确定文件大小。
FileUtils的文件大小
在最后一个示例中,我们使用 Apache Commons 的FileUtils确定文件大小。 查找文件大小的方法是sizeOf()。
<dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.6</version></dependency>
对于此示例,我们需要commons-io依赖项。
JavaFileSizeEx4.java
package com.zetcode;import java.io.File;import java.io.IOException;import org.apache.commons.io.FileUtils;public class JavaFileSizeEx4 {public static void main(String[] args) throws IOException {String fileName = "src/main/resources/words.txt";File f = new File(fileName);long fileSize = FileUtils.sizeOf(f);System.out.format("The size of the file: %d bytes", fileSize);}}
该代码示例使用 Apache Commons 的FileUtils' sizeOf()方法确定文件大小。
在本教程中,我们展示了如何确定 Java 文件的大小。 您可能也对相关教程感兴趣: Java 文件教程, Java 创建目录,用 Java 复制文件, Java Files.list教程, Java Unix 时间,用 Java 创建文件, Java 教程,用 Java 读取文本文件和用 Java 编写 ICO 图像。
