Anda dapat menggunakan Apache Commons IO
untuk mencari ukuran folder dengan mudah.
Jika Anda menggunakan maven, silakan tambahkan ketergantungan berikut di pom.xml
file Anda .
<!-- https://mvnrepository.com/artifact/commons-io/commons-io -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
Jika bukan penggemar Maven, unduh jar berikut dan tambahkan ke jalur kelas.
https://repo1.maven.org/maven2/commons-io/commons-io/2.6/commons-io-2.6.jar
public long getFolderSize() {
File folder = new File("src/test/resources");
long size = FileUtils.sizeOfDirectory(folder);
return size; // in bytes
}
Untuk mendapatkan ukuran file melalui Commons IO,
File file = new File("ADD YOUR PATH TO FILE");
long fileSize = FileUtils.sizeOf(file);
System.out.println(fileSize); // bytes
Itu juga dapat dicapai melalui Google Guava
Untuk Maven, tambahkan yang berikut ini:
<!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>28.1-jre</version>
</dependency>
Jika tidak menggunakan Maven, tambahkan berikut ini ke jalur kelas
https://repo1.maven.org/maven2/com/google/guava/guava/28.1-jre/guava-28.1-jre.jar
public long getFolderSizeViaGuava() {
File folder = new File("src/test/resources");
Iterable<File> files = Files.fileTreeTraverser()
.breadthFirstTraversal(folder);
long size = StreamSupport.stream(files.spliterator(), false)
.filter(f -> f.isFile())
.mapToLong(File::length).sum();
return size;
}
Untuk mendapatkan ukuran file,
File file = new File("PATH TO YOUR FILE");
long s = file.length();
System.out.println(s);