У меня есть приложение, написанное на Java, которое использует файл jar (он использует более одного, но это не так).Эффективное извлечение файла из jar
Дело в том, что файл Jar, который я использую, содержит файлы, которые я абсолютно ДОЛЖЕН извлечь в файловую систему.
До сих пор я использую Class.getResourceAsStream и FileOutputStream, но этот метод несколько медленный. Обратите внимание, что некоторые из этих файлов основаны на тексте, но другие просто двоичные.
Чтобы избежать необходимости извлекать файлы из JAR, существуют ли какие-либо оптимизации (например, более адекватные функции) для этих задач.
Обратите внимание, что мое приложение основано на Java 6, и я хотел бы уменьшить внешние зависимости до минимума.
EDIT: На будущем, мой OLD (inefficent) код был:
int c;
while((c = is.read())!=-1){
fos.write(c);
}
Для нового, гораздо более быстрого кода, см принятого ответа.
Я действительно копировал byte by byte! Теперь это значительно быстрее! Благодаря! – luiscubal