🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# Java 文件大小 原文:http://zetcode.com/java/filesize/ 在本教程中,我们展示了几种方法来确定 Java 中文件的大小。 文件大小用于衡量计算机文件包含多少数据,或者消耗其多少存储空间。 文件大小通常以字节表示。 在 Java 中,我们可以使用`File`,`FileChannel`,`Files`和 Apache Commons 的`FileUtils`确定文件的大小。 根据经验,在新代码中,我们应该使用`Files`类。 `words.txt` ```java green, chair, pen, computer, apple, book, scissors ``` 在我们的示例中,我们将使用位于`src/main/resources`目录中的`words.txt`文件。 ## 使用`File`的文件大小 `File`的`length()`方法返回文件大小。 这是找出 Java 文件大小的最古老的 API。 `JavaFileSizeEx.java` ```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` ```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` ```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()`。 ```java <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.6</version> </dependency> ``` 对于此示例,我们需要`commons-io`依赖项。 `JavaFileSizeEx4.java` ```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/file/), [Java 创建目录](/java/createdirectory/),[用 Java 复制文件](/java/copyfile/), [Java `Files.list`教程](/java/fileslist/), [Java Unix 时间](/java/unixtime/),[用 Java 创建文件](/java/createfile/), [Java 教程](/lang/java/),[用 Java 读取文本文件](/articles/javareadtext/)和[用 Java 编写 ICO 图像](/articles/javaico/)。