mirror of
https://git.mihon.tech/mihonapp/mihon
synced 2024-11-25 22:55:59 +03:00
parent
3ce9a9ff97
commit
20bec66a9d
2 changed files with 6 additions and 3 deletions
|
@ -26,9 +26,11 @@ internal class RarPageLoader(file: File) : PageLoader() {
|
|||
rar.fileHeaders.asSequence()
|
||||
.filterNot { it.isDirectory }
|
||||
.forEach { header ->
|
||||
val pageFile = File(tmpDir, header.fileName).also { it.createNewFile() }
|
||||
val pageOutputStream = File(tmpDir, header.fileName.substringAfterLast("/"))
|
||||
.also { it.createNewFile() }
|
||||
.outputStream()
|
||||
getStream(rar, header).use {
|
||||
it.copyTo(pageFile.outputStream())
|
||||
it.copyTo(pageOutputStream)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,7 +24,8 @@ internal class ZipPageLoader(file: File) : PageLoader() {
|
|||
generateSequence { zipInputStream.nextEntry }
|
||||
.filterNot { it.isDirectory }
|
||||
.forEach { entry ->
|
||||
File(tmpDir, entry.name).also { it.createNewFile() }
|
||||
File(tmpDir, entry.name.substringAfterLast("/"))
|
||||
.also { it.createNewFile() }
|
||||
.outputStream().use { pageOutputStream ->
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
||||
pageOutputStream.write(zipInputStream.readNBytes(entry.size.toInt()))
|
||||
|
|
Loading…
Reference in a new issue