Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Определение всех диско Компа...


Автор: Egorik789 5.11.2009, 09:45
Привет всем.. 
Нужно сделать небольшую программку на Java.
Чтобы определяло все диски компа, и выводило информацию о каждом и можно было его форматировать..
Даже не знаю с чего начать.. 
Помогите пожалуйста.

Автор: Exai1e 5.11.2009, 11:56
Цитата(Egorik789 @  5.11.2009,  10:45 Найти цитируемый пост)
Чтобы определяло все диски компа

Код

        File[] roots = File.listRoots();
        for (File file: roots) {
            System.out.println(file.getAbsolutePath());
        }

доп информацию о диске, смотри в http://java.sun.com/javase/6/docs/api/ + WinApi


Автор: LSD 5.11.2009, 12:49
Код

        FileSystemView view = FileSystemView.getFileSystemView();
        File[] files = File.listRoots();
        for (File drive : files) {
            System.out.println(drive);
            System.out.println("  System Display Name: " + view.getSystemDisplayName(drive));
            System.out.println("  System Type Description: " + view.getSystemTypeDescription(drive));
            System.out.println();
        }

А форматировать с помощью Runtime.exec().

Автор: Egorik789 5.11.2009, 17:48
LSD, 
Спасибо))
А можно подробнее как сделать Runtime.exec();?
И еще надо показать инфу сколько обьем диска и сколько свободно..?
Я теперь вывожу список дисков в TextArea.

Автор: LSD 5.11.2009, 17:56
http://base.vingrad.ru/view/2778-Esche-raz-o-Runtimeexec
С параметрами format.exe разберешься сам, не разберешься иди в раздел по Windows и спроси там.

Код

    public static void main(String[] args) throws Exception {
        FileSystemView view = FileSystemView.getFileSystemView();
        File[] files = File.listRoots();
        for (File drive : files) {
            System.out.println(drive);
            System.out.println("  System Display Name: " + view.getSystemDisplayName(drive));
            System.out.println("  System Type Description: " + view.getSystemTypeDescription(drive));
            System.out.printf("  Free %,d Mb from %,d Mb %n", drive.getFreeSpace() / (1024 * 1024), drive.getTotalSpace() / (1024 * 1024));
            System.out.println();
        }
    }

Автор: Egorik789 5.11.2009, 18:00
LSD, 
Ок, спасибо) попытаюсь разобраться)
Google(+) smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)