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

Помогите А можно ли выгрузить папку, а не файл?

Тема в разделе "Разработка плагинов для новичков", создана пользователем Mr_RoboMan, 11 май 2016.

  1. Larin

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

    Баллы:
    103
    То есть этот метод из jar архива вытаскивает нужные файлы?[DOUBLEPOST=1463147748,1463147346][/DOUBLEPOST]
    Код:
    URL url = MyClass.class.getResource("MyClass.class");
    String scheme = url.getProtocol();
    if (!"jar".equals(scheme))
      throw new IllegalArgumentException("Unsupported scheme: " + scheme);
    JarURLConnection con = (JarURLConnection) url.openConnection();
    JarFile archive = con.getJarFile();
    /* Search for the entries you care about. */
    Enumeration<JarEntry> entries = archive.entries();
    while (entries.hasMoreElements()) {
      JarEntry entry = entries.nextElement();
      for(String folder : folders) {
        if (entry.getName().startsWith(folder)) {
          ...
        }
      }
    }
    
    Folders - массив с нужными папками.(artifacts, races)
     
  2. Хостинг MineCraft
    <
  3. Автор темы
    Mr_RoboMan

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

    Баллы:
    123
    Я конечно думал что есть что-то... Попроще)
    Но если работать будет, то итак сойдет, сегодня протестирую!! Спасибо)[DOUBLEPOST=1463153429][/DOUBLEPOST]
    Код:
    private void saveConfigs() {
            try {
                saveResource("config.yml", false);
                String[] folders = new String[]{"groups", "races", "artifacts", "damage_types"};
                URL url = Main.class.getResource("Main.class");
                String scheme = url.getProtocol();
                if (!"jar".equals(scheme))
                    throw new IllegalArgumentException("Unsupported scheme: " + scheme);
                JarURLConnection con = (JarURLConnection) url.openConnection();
                JarFile archive = con.getJarFile();
                Enumeration<JarEntry> entries = archive.entries();
                while (entries.hasMoreElements()) {
                    JarEntry entry = entries.nextElement();
                    for(String folder : folders) {
                        if (entry.getName().startsWith(folder)) {
                            //А что тут делать?... Как выгрузить?..
                        }
                    }
                }
            } catch (Exception ignored) {}
        }
     
  4. Larin

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

    Баллы:
    103
  5. Автор темы
    Mr_RoboMan

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

    Баллы:
    123
  6. Larin

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

    Баллы:
    103
  7. Dereku

    Dereku Старожил

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    так не нужно его полностью распаковывать. В любом случае я уже написал, что его проблема в организации плагина.
     

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