Рубрики
Без рубрики

Java получить размер файла

Java getfilesize, размер файла java, получить размер файла в java, метод длины файла java, размер канала файла, размер файла, размер файла байт, мегабайт, ГБ.

Автор оригинала: Pankaj Kumar.

Сегодня мы рассмотрим различные способы определения размера файла в Java.

Java получить размер файла

Существуют различные классы, которые мы можем использовать для программы java get file size. Некоторые из них являются;

  1. Java получает размер файла с помощью Файла класса
  2. Получить размер файла в java с помощью FileChannel class
  3. Java получает размер файла с помощью Apache Commons IO Файлы класс

Прежде чем мы рассмотрим пример программы для определения размера файла, у нас есть образец pdf-файла размером 2969575 байт.

Java получает размер файла с помощью класса файла

Метод Java File length() возвращает размер файла в байтах. Возвращаемое значение не указано, если этот файл обозначает каталог. Поэтому, прежде чем вызывать этот метод для определения размера файла в java, убедитесь, что файл существует, а не является каталогом.

Ниже приведен простой пример программы java для получения размера файла с использованием класса 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";
	}
}

Получить размер файла в java с помощью класса FileChannel

Мы можем использовать метод FileChannel size() для получения размера файла в байтах.

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();
		}
	}
}

Java получает размер файла с помощью класса FileUtils ввода-вывода Apache Commons

Если вы уже используете Apache Commons IO в своем проекте, вы можете использовать метод FileUtils sizeOf для получения размера файла на 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");
	}
}

Это все для программ java get с размером файла.