Использование, (inputStrem, OutputStrem)

Я хочу, чтобы при попытке скопировать в каталог отображалось сообщение и программа закрывалась. В случае файла отобразите размер файла и время последнего изменения. Я точно не знаю, как я могу показать размер файла и последние изменения. .................................................. .................................................. .................................................. ........

import java.io.*;

public class KopeeriFail {

    private static void kopeeri(String start, String end) throws Exception {
        InputStream sisse = new FileInputStream(start);
        OutputStream välja = new FileOutputStream(end);
        byte[] puhver = new byte[1024];
        int loetud = sisse.read(puhver);
        while (loetud > 0) {
            välja.write(puhver, 0, loetud);
            loetud = sisse.read(puhver);
        }
        sisse.close();
        välja.close();
    }

    public static void main(String[] args) throws Exception {
        if (args.length != 1) {
            System.out.println("Did you gave name to the file");
            System.exit(1);
        }
        kopeeri(args[0], args[0] + ".copy");
    }
}

Частичный дубликат - Как получить размер файла

Piro says Reinstate Monica 17.04.2018 14:24
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
1
46
1

Ответы 1

Вы можете легко получить BasicFileAttributes, в котором хранятся размер и временная метка последнего изменения.

public static void main(String[] args) throws IOException {
    if (args.length != 1) {
        System.err.println("Specify file name");
        return;
    }

    Path initial = Paths.get(args[0]);
    if (!Files.exists(initial)){
        System.err.println("Path is not exist");
        return;
    }

    if (Files.isDirectory(initial)) {
        System.err.println("Path is directory");
        return;
    }

    BasicFileAttributes attributes = Files.
            readAttributes(initial, BasicFileAttributes.class);
    System.out.println("Size is " + attributes.size() + " bytes");
    System.out.println("Last modified time " + attributes.lastModifiedTime());

    Files.copy(initial, initial.getParent()
            .resolve(initial.getFileName().toString() + ".copy"));
}

Надеюсь, поможет!

Другие вопросы по теме