Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите Для знающий java, удаление каталога.

Тема в разделе "[Архив] Помощь", создана пользователем Dobrik, 4 мар 2012.

  1. Автор темы
    Dobrik

    Dobrik Старожил Пользователь

    Баллы:
    123
    Skype:
    dobrik18
    Здравствуйте, есть такая проблема, на моем сервере при обновлении старые файлы не удаляются и клиент часто после обновления крашится, надо удалять папку с клиентом полностью и тогда обновлятся.
    нашел в интернете код для удаления, проблема в том что в java я дуб дубом.
    Нужно чтобы код удалял папки mods ,config, redpower, resources, buildcraft, перед обновлением.
    вот код который удалось найти.
    Код:
    import java.io.File;
     
    class DeleteDir {
      public static void main(String args[]) {
        deleteDirectory(new File(args[0]));
      }
     
      static public boolean deleteDirectory(File path) {
        if( path.exists() ) {
          File[] files = path.listFiles();
          for(int i=0; i<files.length; i++) {
            if(files[i].isDirectory()) {
              deleteDirectory(files[i]);
            }
            else {
              files[i].delete();
            }
          }
        }
        return( path.delete() );
      }
    }
    Готов заплатить за помощь.
     
  2. Хостинг MineCraft
    <
  3. lol63

    lol63 Модератор Переводчик

    Баллы:
    153
    Ну и всё. Теперь в главном классе укажем папки для удаления.
    Код:
    class DeleteDir {
     
      public static void main(String args[]) {
     
        deleteDirectory(new File("mods"));
        deleteDirectory(new File("config"));
        deleteDirectory(new File("redpower"));
        deleteDirectory(new File("resources"));
        deleteDirectory(new File("buildcraft"));
     
      }
     
  4. Автор темы
    Dobrik

    Dobrik Старожил Пользователь

    Баллы:
    123
    Skype:
    dobrik18
    я так понимаю
    Код:
    class DeleteDir {
     
      public static void main(String args[]) {
     
        deleteDirectory(new File("mods"));
        deleteDirectory(new File("config"));
        deleteDirectory(new File("redpower"));
        deleteDirectory(new File("resources"));
        deleteDirectory(new File("buildcraft"));
     
      }
    в класс загрузчик вставить? если да то в какую часть ? или всеравно? хоть в самый низ?
    а это
    Код:
    class DeleteDir {
      public static void main(String args[]) {
        deleteDirectory(new File(args[0]));
      }
     
      static public boolean deleteDirectory(File path) {
        if( path.exists() ) {
          File[] files = path.listFiles();
          for(int i=0; i<files.length; i++) {
            if(files[i].isDirectory()) {
              deleteDirectory(files[i]);
            }
            else {
              files[i].delete();
            }
          }
        }
        return( path.delete() );
      }
    }
    в классе обновления перед скачиванием новых файлов, так ведь ?
     
  5. lol63

    lol63 Модератор Переводчик

    Баллы:
    153
    Код:
      static public boolean deleteDirectory(File path) {
        if( path.exists() ) {
          File[] files = path.listFiles();
          for(int i=0; i<files.length; i++) {
            if(files[i].isDirectory()) {
              deleteDirectory(files[i]);
            }
            else {
              files[i].delete();
            }
          }
        }
        return( path.delete() );
      }
    Это статичный метод. Его в класс GameUpdater.java просто засунуть.
    А вызывать перед скачкой.
     
    kaban1997 и Dobrik нравится это.
  6. kaban1997

    kaban1997 Старожил Переводчик Пользователь

    Баллы:
    173
    А поподробней куда вставлять после чего?
     
    IstominHero нравится это.
  7. kaban1997

    kaban1997 Старожил Переводчик Пользователь

    Баллы:
    173
    Ну хотя бы в личку напишите
     
    IstominHero нравится это.
  8. Автор темы
    Dobrik

    Dobrik Старожил Пользователь

    Баллы:
    123
    Skype:
    dobrik18
    Матюгается на строки
    public static void main(String args[]) {
    и
    static public boolean deleteDirectory(File path) {

    нетбинс пишет "Отсутствует главный метод для класса "net.minecraft.GameUpdater"."
     
    RVXman нравится это.
  9. kaban1997

    kaban1997 Старожил Переводчик Пользователь

    Баллы:
    173
    lol63 напиши инструкцию в разделе инструкций
     
    IstominHero нравится это.
  10. kaban1997

    kaban1997 Старожил Переводчик Пользователь

    Баллы:
    173
    Ну что молчим напишите хотябы в личку
     
    IstominHero нравится это.
  11. lol63

    lol63 Модератор Переводчик

    Баллы:
    153
    Добились удаления каталогов уже :)
     
  12. kaban1997

    kaban1997 Старожил Переводчик Пользователь

    Баллы:
    173
    а я нет, плз по подробнее! наставлю лайков
     
    Оригинало_о и IstominHero нравится это.
  13. kaban1997

    kaban1997 Старожил Переводчик Пользователь

    Баллы:
    173
    Ну плз! я вставлял эти коды по разному в разные места и ничего не происходило
     
    IstominHero нравится это.
  14. lol63

    lol63 Модератор Переводчик

    Баллы:
    153
    Уже пишу.
     
  15. lol63

    lol63 Модератор Переводчик

    Баллы:
    153

Поделиться этой страницей