Java obtenir la taille du fichier

Aujourd’hui, nous examinerons différentes façons d’obtenir la taille d’un fichier en Java.

Obtenir la taille du fichier en Java

Il existe différentes classes que nous pouvons utiliser pour le programme de récupération de la taille du fichier Java. Certaines d’entre elles sont;

  1. Obtenir la taille du fichier en Java en utilisant la classe File
  2. Obtenir la taille du fichier en Java en utilisant la classe FileChannel
  3. Obtenir la taille du fichier en Java en utilisant la classe FileUtils d’Apache Commons IO

Avant d’examiner un exemple de programme pour obtenir la taille du fichier, nous avons un fichier PDF d’exemple d’une taille de 2969575 octets.

Obtenir la taille du fichier en Java en utilisant la classe File

La méthode length() de Java File renvoie la taille du fichier en octets. La valeur de retour n’est pas spécifiée si ce fichier désigne un répertoire. Donc, avant d’appeler cette méthode pour obtenir la taille du fichier en Java, assurez-vous que le fichier existe et qu’il ne s’agit pas d’un répertoire. Voici un exemple simple de programme Java pour obtenir la taille du fichier en utilisant la classe File.

package com.journaldev.getfilesize;

import java.io.File;

public class JavaGetFileSize {

	static final String FILE_NAME = "/Users/pankaj/Downloads/file.pdf";

	public static void main(String[] args) {
		File file = new File(FILE_NAME);
		if (!file.exists() || !file.isFile()) return;

		System.out.println(getFileSizeBytes(file));
		System.out.println(getFileSizeKiloBytes(file));
		System.out.println(getFileSizeMegaBytes(file));
	}

	private static String getFileSizeMegaBytes(File file) {
		return (double) file.length() / (1024 * 1024) + " mb";
	}
	
	private static String getFileSizeKiloBytes(File file) {
		return (double) file.length() / 1024 + "  kb";
	}

	private static String getFileSizeBytes(File file) {
		return file.length() + " bytes";
	}
}

Obtenez la taille du fichier en java en utilisant la classe FileChannel

Nous pouvons utiliser la méthode size() de FileChannel pour obtenir la taille du fichier en octets.

package com.journaldev.getfilesize;

import java.io.IOException;
import java.nio.channels.FileChannel;
import java.nio.file.Path;
import java.nio.file.Paths;

public class JavaGetFileSizeUsingFileChannel {

	static final String FILE_NAME = "/Users/pankaj/Downloads/file.pdf";

	public static void main(String[] args) {

		Path filePath = Paths.get(FILE_NAME);
		FileChannel fileChannel;
		try {
			fileChannel = FileChannel.open(filePath);
			long fileSize = fileChannel.size();
			System.out.println(fileSize + " bytes");
			fileChannel.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

Obtenir la taille du fichier en java en utilisant la classe FileUtils d’Apache Commons IO

Si vous utilisez déjà Apache Commons IO dans votre projet, vous pouvez alors utiliser la méthode sizeOf de FileUtils pour obtenir la taille du fichier en java.

package com.journaldev.getfilesize;

import java.io.File;

import org.apache.commons.io.FileUtils;

public class JavaGetFileSizeUsingApacheCommonsIO {

	static final String FILE_NAME = "/Users/pankaj/Downloads/file.pdf";

	public static void main(String[] args) {
		File file = new File(FILE_NAME);

		long fileSize = FileUtils.sizeOf(file);

		System.out.println(fileSize + " bytes");
	}
}

C’est tout pour les programmes de récupération de la taille du fichier en java.

Vous pouvez consulter plus d’exemples d’E/S Java depuis notre Dépôt GitHub.

Source:
https://www.digitalocean.com/community/tutorials/java-get-file-size