Если я правильно помню, файлы .jar
не могут быть доступны для восстановления, но поскольку файлы .jar
представляют собой не что иное, как Zip-файлы с необычным расширением, их можно открыть так.
Вот моя структура папок для примера (но подойдет любая структура).
ExampleDir
|
+--- TestZip.fan
+--- testOpen.jar
|
+--- META-INF
| +--- email.png
| ...
|...
И вы открываете testOpen.jar
вот так:
class TestZip
{
static Void main(Str[] args)
{
jar := Zip.open(File(`testOpen.jar`))
png := jar.contents[`/META-INF/email.png`].readAllBuf
jar.close
}
}
РЕДАКТИРОВАТЬ: Обсуждение этого на досках Fantom кажется, что этот пример должен работать.
buff := Interop.toFan(Class.forName("net.testOpen.Foo").getClassLoader().getResourceAsStream("email.png")),4096)