Comments (2)
I'll see if I can do anything to improve that performance. Certainly PC extractors will have significant advantage there, they can get away with a lot of things Dart can't, but it can certainly be improved. The size of the EOCD isn't the issue, it's that they put it at the end of the file, meaning you have to search backwards, and there's nothing to say there can't be any amount of other data after the EoCD, meaning you can't just read the last 64kb. So the theoretical worse case is it has to read the entire file backwards, which is what's happening.
from archive.
Hi there. I'm also facing a similar issue. Even when reading small corrupted files (5 MB) from a network storage, it takes minutes in this mode. Initially, I thought the isolate had frozen, but then when I looked into the code, I found this loop.
I'd love to hear if there've been any updates regarding this issue.
Update - Found a bug with duplicate checks in _findSignature #351. This improves reading time. Please have a look.
from archive.
Related Issues (20)
- Zip encode with password creates a "Null check operator used on a null value"
- Is it possible to work with dart:io File directly? HOT 5
- Streaming directly from archive files
- ArchiveFile.string incorrect encodes non-ASCII data (causes dataloss) HOT 3
- It's slow to read zip headers HOT 4
- If it's possible to add a callback function so that can be show now extracting file in progress HOT 2
- Semantic change in Dart 3.5 HOT 4
- Remove the dep on package:pointycastle? HOT 4
- 3.5 Missing property ZipFileEncoder.zipPath HOT 2
- Reusing `AchiveFile` can result in corrupted archives HOT 8
- there is an error:( FormatException:Missing extension byte),if filepath contains a chinese, HOT 1
- `ArchiveFile.rawContent` is null when decoded from an Archive HOT 6
- tar.gz large content
- [Performance] 3.6.1 is much slower than 3.5.0
- [Debug] Exhausted heap space HOT 13
- Error: Method not found: 'UnmodifiableUint8ListView'. HOT 2
- How to achieve asynchronous decompression? HOT 2
- Isolate "freezes" when adding compression code
- Error: Method not found: 'UnmodifiableUint8ListView'. HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from archive.