我想预览压缩文件中的照片而不解压文件 目前,对于 zip 文件,我使用 ZipFile 和 ZipEntry 来查看它们,但它们仅适用于 zip 文件。
所以我继续使用另一个库,7-Zip-JBinding。
我得到了一些数据,但我不知道如何显示图像。这是使用该库的代码:
private suspend fun checkFileZip(filePath: String): MutableList<PhotoModel> {
return withContext(Dispatchers.IO) {
val list: MutableList<PhotoModel> = mutableListOf()
runCatching {
val randomAccessFile = RandomAccessFile(filePath, "r")
val randomAccessFileStream = RandomAccessFileInStream(randomAccessFile)
val inArchive = SevenZip.openInArchive(null, randomAccessFileStream)
inArchive.simpleInterface.archiveItems?.forEach { item ->
if (!item.isFolder) {
if (item.path.contains(".jpg") || item.path.contains(".png")) {
if (item.size > 10000) {
val photoModel = PhotoModel(
"$filePath/${item.path.toFolderName()}",
resolution = "",
sizePhoto = item.size,
lastModifiedPhoto = item.lastWriteTime.time,
isFileInApk = true,
zipFileString = filePath,
zipEntryString = filePath,
)
addPhotoModel(photoModel)
list.add(photoModel)
}
}
}
}
}.onFailure {
Log.d("error", "$filePath - ${it.message}")
}
return@withContext list
}
}
我想知道如何预览压缩文件中包含的图像文件。
基本上没有。 @g00se 说这取决于软件...可能有一些软件可以读取压缩文件,但最终it将解压缩图像。
我知道这不是你的问题,但如果你想避免解压缩文件(甚至将它们传输到客户端),那么你可以有一个服务器进程: