Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.58/50: Рейтинг темы: голосов - 50, средняя оценка - 4.58
0 / 0 / 0
Регистрация: 17.08.2012
Сообщений: 8
1

Как получить размер папки

17.08.2012, 22:00. Показов 9534. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как получить размер папки? Мне это нужно для игры, типо анти-чит) После получения размера надо выполнить такое действие:
Java
1
2
3
4
5
6
7
8
        if(sizemods > length){
            multiplayerButton.enabled = false;
            splashText = "Клиент модифицирован!";
        }
        else if(sizemods < length){
            multiplayerButton.enabled = false;
            splashText = "Клиент модифицирован!";
        }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.08.2012, 22:00
Ответы с готовыми решениями:

Как получить список файлов предыдущей (.) папки?
Есть компонент Swing JList на диалоговом окне private JList list1; DefaultListModel model =...

Как получить размер папки
Нужно со считать размер именно директории .Прошу посоветовать в какую сторону глядеть, какую...

Получить размер папки
В общем, начну просто. Изучаем Си Шарп. Дали 3 лабораторки, а сейчас проект требуют. Я в смятении....

Как получить размер папки "Users"?
Всем доброго дня :good: Понадобилось получить размер папки &quot;C:\Users&quot; Как выяснилось получить...

16
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
18.08.2012, 10:03 2
Создаете стек, считаете суммарный размер файлов в вашей директории, если встречаете вложенную директорию, а не файл - добавляете ее в стек, как только переберете все файлы/директории - берете директорию из стека и повторяете те же операции, заканчиваете подсчет тогда, когда стек окажется пустым.

Но для проверки модификации файлов я рекомендовал бы другие, более надежные методы. Например, сравнение хешей файлов с оригинальными
0
0 / 0 / 0
Регистрация: 17.08.2012
Сообщений: 8
18.08.2012, 23:58  [ТС] 3
Можно пример?

Добавлено через 5 минут
Цитата Сообщение от M128K145 Посмотреть сообщение
Но для проверки модификации файлов я рекомендовал бы другие, более надежные методы. Например, сравнение хешей файлов с оригинальными
Пожалуйста приведите пример! Я не эксперт в Java. Я только начал учить её.

Добавлено через 12 часов 3 минуты
Можно побыстрей? Уже 2 день жду ответу, а работа стоит.
0
62 / 62 / 16
Регистрация: 18.10.2010
Сообщений: 240
19.08.2012, 02:32 4
Java
1
2
3
4
if (getDirSize(new File("c:\myfolder")) != original) {
    multiplayerButton.enabled = false;
    splashText = "Клиент модифицирован!";
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
long getDirSize(File dir) {
    long size = 0;
    if (dir.isFile()) {
        size = dir.length();
    } else {
        File[] subFiles = dir.listFiles();
        for (File file : subFiles) {
            if (file.isFile()) {
                size += file.length();
            } else {
                size += getDirSize(file);
            }
        }
    }
    return size;
}
2
0 / 0 / 0
Регистрация: 17.08.2012
Сообщений: 8
19.08.2012, 11:42  [ТС] 5
Что обозначает этот знак? Больше или меньше?
Цитата Сообщение от Alex_oo7 Посмотреть сообщение
("c:\myfolder")) != original
0
62 / 62 / 16
Регистрация: 18.10.2010
Сообщений: 240
19.08.2012, 11:49 6
RusHenry, Это знак НЕ РАВНО
0
0 / 0 / 0
Регистрация: 17.08.2012
Сообщений: 8
19.08.2012, 12:00  [ТС] 7
src.GuiMainMenu.getDirSize(GuiMainMenu.java:211)
Странно почему?

Добавлено через 25 секунд
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
if (par1GuiButton.id == 2)
        {
            
            if (getDirSize(new File("D:\123")) != sizemods) {
                multiplayerButton.enabled = false;
                splashText = "\2474Клиент модифицирован!";
                textmult = "\2474Мультиплеер";
            }
            else
            {
                mc.displayGuiScreen(new GuiMultiplayer(this));  
            }
        }
Добавлено через 6 минут
Может надо добавить ????
Java
1
import ***
Добавлено через 42 секунды
Если, что вот мои import)
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.io.UnsupportedEncodingException;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Random;
import java.util.Set;
 
import net.client;
import org.lwjgl.opengl.GL11;
import org.lwjgl.util.glu.GLU;
0
487 / 333 / 71
Регистрация: 24.12.2011
Сообщений: 591
19.08.2012, 13:35 8
Escape Sequences
1
0 / 0 / 0
Регистрация: 17.08.2012
Сообщений: 8
19.08.2012, 13:43  [ТС] 9
Цитата Сообщение от exiqa Посмотреть сообщение
Что вы хотели мне этим сказать?
0
62 / 62 / 16
Регистрация: 18.10.2010
Сообщений: 240
19.08.2012, 13:56 10
RusHenry, символ \ экранирует следующий символ, что бы можно было вывести спец символы например:
Java
1
System.out.println("She said \"Hello!\" to me.");
выведет
She said "Hello!" to me.
Поэтому нужно вместо \ писать \\
Java
1
if (getDirSize(new File("D:\\123")) != sizemods) {
1
0 / 0 / 0
Регистрация: 17.08.2012
Сообщений: 8
19.08.2012, 14:53  [ТС] 11
Спасибо! Сейчас попробую!

Добавлено через 23 минуты
СПАСИБО! Очень помогли!
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
19.08.2012, 15:10 12
Alex_oo7, как вы думаете, почему я сказал про стек, а не предложил рекурсивный обход? Даю подсказку: симлинк
0
0 / 0 / 0
Регистрация: 17.08.2012
Сообщений: 8
19.08.2012, 18:15  [ТС] 13
А можете ещё подсказать как получить размер файла?)
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
19.08.2012, 19:52 14
Цитата Сообщение от RusHenry Посмотреть сообщение
А можете ещё подсказать как получить размер файла?)
А чем метод length() из класса File не устраивает? Но если хотите, то можете открыть поток для чтения этого файла, прочитать поток и посчитать сколько байт было прочитано
0
любитель покушать
687 / 641 / 248
Регистрация: 25.09.2011
Сообщений: 1,313
20.08.2012, 00:22 15
Java
1
2
3
4
5
6
import java.io.*;
import java.nio.*;
import java.util.*;
import net.client;
import org.lwjgl.opengl.GL11;
import org.lwjgl.util.glu.GLU;
так лучше, думаю)
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
20.08.2012, 00:33 16
Цитата Сообщение от Севак Посмотреть сообщение
так лучше, думаю)
Вы не правильно думаете. Зачем импортировать классы, которые в коде не используются? Вполне возможна ситуация, когда вы сделаете импорт из двух пакетов, в которых будут классы с одинаковым именем. Как вы думаете, что произойдет?
0
любитель покушать
687 / 641 / 248
Регистрация: 25.09.2011
Сообщений: 1,313
20.08.2012, 00:42 17
Понял! Просто где-то в книжке хорстмана было написано мол лучше импортировать сразу все классы чтобы не заморачиваться хуже о этого не будет, а если будут 2 класса с одинаковым именем то указывать класс явно (java.util.Data и java.sql.Data вроде такой пример был, если так не сделать вылезет ошибка компиляции)
0
20.08.2012, 00:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.08.2012, 00:42
Помогаю со студенческими работами здесь

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

Как вычислить размер папки?
Как вычислить размер папки???

Как определить размер папки
Здравствуйте, формучане :) Пытаюсь определить размер папки скриптом php, но выходит довольно туго....

Как на VB подсчитать размер конкретной папки???
Народ срочно нужно узнать как на VB подсчитать размер конкретной папки!!!! Нужно позарез!!!!!!!


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru