mholt/archiver 这个库好像并没有带进度的回调,gpt 搜了几个实现,感觉都不太行,有人做过类似的功能吗? 我看实际解压文件,这类进度基本都是带的啊,实现应该都不复杂啊
![]() |
1
ysicing 8 天前
https://github.com/cheggaaa/pb 你说这个么,我用这个弄过文件操作的进度条。感觉好像没太大场景吧🤔
|
![]() |
2
lqs 8 天前
写文件的时候,自己累加 Write 的大小,或用 TeeReader 写到计数器
|
3
Sendya 8 天前
很多进度都是伪进度,通过 进度=current/total*100 。
但是我看了眼你描述的这个库,作者有提供一个思路是非常好的,通过读取与写出的 buf 大小累计,可以得出进度,因为原始压缩文件的大小是可以在 OpenFile 返回的 File.Stat() 取到,在计算百分比进度就可以了,这个准确度比通过 已经解压的文件数/总文件数*100 来的更准确些 https://github.com/mholt/archives/issues/16#issuecomment-2651918336 |
![]() |
4
lolico 8 天前 via iPhone
可以看下 progressbar
|
![]() |
5
lolico 8 天前 via iPhone
|
![]() |
6
PungentSauce 8 天前
我也是用的楼上 github.com/schollz/progressbar 下载文件配合 progressbar 库实现的进度条
|
![]() |
7
Mohanson 8 天前
|
8
sthwrong 7 天前
进度条库好找,不过 op 可能想要的是 3 楼的答案,也就是从哪里取得进度数据给进度条实现使用。
|