Получить объект File или URI для файла в архиве с Java?

ifstream fs(filenema);
string line = "";
while (getline(fs, line))
{
    stringstream linestream(line);
    string token = "";
    while (getline(linestream, token, ';')) 
    {
        ...    
    }
}
11
задан Hemeroc 12 January 2010 в 14:34
поделиться

3 ответа

JAR : Протокол Протокол - это способ создания URI на ресурс в архиве JAR:

jar:http://www.example.com/bar/baz.jar!/path/to/file

см. Документы API для JarurLConnection: http://java.sun.com /javase/6/docs/api/java/net/jarurlconnection.html

betwenseween jar : и / может быть любой URL, включая файл : URL.

12
ответ дан 3 December 2019 в 08:04
поделиться
public List<File> getFilesInJar(String jarName){    
  List<File> result = new ArrayList<File>();
  File jarFile = new File(jarName);    
  JarInputStream jarFile = new JarInputStream(new FileInputStream(jarFile));
  JarEntry jarEntry;

  while ((jarEntry = jarFile.getNextJarEntry()) != null) {
    result.add(inputStreamToFile(jarFile.getInputStream(jarEntry)));
  }
  return result;
}

Для метода INPUTSTREAMTOFILE, Google «Inputstream Java в файл», хотя вы можете быть довольны объектом INPUTSTREAM также, вместо объекта файла :)

2
ответ дан 3 December 2019 в 08:04
поделиться

Для фактических данных файлов см. ZipFile # GetInputStream (Zipentry) . Javadocs для этого класса объясняют, как он будет использоваться.

1
ответ дан 3 December 2019 в 08:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: