BitComet piece_part.bc! 文件是什么 — 临时下载文件的格式与处理
这是什么文件
在 BitComet 的下载目录里,你会看到一些后缀为 .bc! 的文件(有的版本是 .part 或 !BitComet!),文件名通常长这样:
我的视频任务.piece_part.bc!
或者:
Ubuntu-22.04-desktop-amd64.iso.bc!
这些都是 BitComet 的临时下载文件——下载还没完成、文件里只有部分数据时,BitComet 用 .bc! 后缀把它和"已完成的文件"区分开。一旦下载 100% 完成并通过哈希校验,BitComet 会自动把 .bc! 后缀去掉,变成正常的文件。
为什么需要临时文件后缀
BitComet 引入 .bc! 后缀主要是为了保护正在下载的文件不被其他程序干扰:
- 防止被其他下载器接管:如果你同时用多个下载器(比如 BitComet 和 qBittorrent),
.bc!后缀让 qBittorrent 一看就知道"这是 BitComet 正在下的,别碰"——反过来也一样。不同下载器的临时文件后缀各不相同(qBittorrent 用.part、uTorrent 用.!ut、迅雷用.xltd)。 - 防止被视频播放器错误打开:如果一个视频文件下载到 60% 就被播放器当完整文件打开,可能会播到一半崩掉或报错。加后缀后播放器不认识这个格式。
- 防止被杀毒软件扫到:有些杀毒软件会扫描下载目录里的所有文件、包括还没下载完的——临时文件后缀可以让杀毒软件忽略这些半成品。
文件内容是什么
.bc! 文件内部到底存了什么取决于 BitComet 当前下载到哪个阶段:
阶段一:刚启动下载(智能磁盘分配开启)
开启"智能磁盘分配"(BitComet 默认行为)后,下载刚开始时 BitComet 会先创建一个完整大小的空文件——比如你要下一个 10GB 的 ISO,BitComet 立刻在磁盘上创建一个 10GB 的 .bc! 文件,里面全是零字节数据(NTFS 下可能显示为"稀疏文件",实际不占满 10GB 空间)。
阶段二:下载进行中
BitComet 把从对等者那里拉到的 BT 分片数据写入这个临时文件对应的位置——分片是乱序到达的,所以文件内部也是零字节和真实数据交错分布。BT 分片通常是 256KB ~ 4MB 一块,每块都有独立的 SHA-1 哈希校验。
阶段三:下载完成
所有分片都下载完并通过哈希校验后,BitComet 把临时文件的 .bc! 后缀去掉——文件变成一个完整、可用的目标文件。
阶段四:校验失败
极少情况下文件全部下载完但哈希校验不通过——BitComet 会定位到是哪个分片损坏了、重新下载那几个分片、再次校验。这期间文件还是 .bc! 后缀,直到校验通过才去掉。
下载中途断电/崩溃了怎么办
如果 BitComet 正在下载时突然崩溃或电脑断电,下次重启 BitComet 会:
- 扫描下载目录里所有
.bc!文件。 - 根据文件内部的分片哈希表重新做一轮完整性校验——哪些分片是好的、哪些需要重新下载。
- 从断点继续下载——已经下载好的分片保留,损坏的重新请求。
这是 BT 协议分片设计的原生好处——单个分片损坏只重下那一个 256KB 或 1MB 的块,不是整个文件重来。
能手动删除 .bc! 文件吗
可以,但要搞清楚你在做什么:
删除一个正在下载中的 .bc! 文件
会丢失这个任务已下载的所有数据。下次 BitComet 重启后会认为这个任务从头开始下载——重新创建临时文件、重新下载所有分片。等于白下了已经完成的那部分。
删除一个已暂停的 .bc! 文件
同样会丢失已下载数据——暂停不代表 BitComet 不再关心这个文件。如果你想彻底取消一个下载任务:
- 先在 BitComet 任务列表里删除这个任务(右键 → 删除)。
- BitComet 会同时删除对应的
.bc!临时文件。 - 如果 BitComet 没自动删(罕见 bug),再手动从磁盘上删。
想"抢救"一个下载了一大半的 .bc! 文件
如果你发现 BitComet 坏了、或者想把未完成的任务转给其他 BT 客户端,理论上可以:
- 不要手动改后缀——直接把
.bc!文件(和对应的 torrent 文件)一起复制到新位置。 - 用另一个 BT 客户端(qBittorrent、Vuze 等)打开 torrent 文件,让它从同一个目录继续下载。
- 其他 BT 客户端会扫描
.bc!文件(它们不认识.bc!后缀但能认出文件里的 BT 分片结构)、做哈希校验、继续下载。
但实际上 BitComet 的临时文件管理逻辑和其他 BT 客户端不完全一致——有些其他客户端可能不识别 .bc! 后缀、会认为目录是空的。这种情况下你可以试试把 .bc! 后缀手动改成 torrent 里声明的原始文件名(比如 Ubuntu-22.04-desktop-amd64.iso),然后让新客户端从同一个目录继续。
临时文件目录在哪里
默认情况下 .bc! 文件存放在BitComet 的默认下载目录里——就是选项 → 任务设置里的"默认下载目录"。有的版本会在下载目录下创建一个 BitComet 子文件夹来存放。
如果找不到 .bc! 文件:
- 在 BitComet 主界面选中对应任务 → 右键 → "打开文件所在目录"(有的版本叫"在资源管理器中显示")。
- 资源管理器打开后你会直接看到那个
.bc!文件。
常见问题
.bc! 文件占了大量磁盘空间但下载没在跑
可能是残留的临时文件——BitComet 之前崩溃过、任务没清理干净就重启了,或者你手动删除了任务但文件留在磁盘上了。
处理方法:
- 先在 BitComet 任务列表里确认这个任务真的不存在了(如果还存在就继续下载,不要手动删文件)。
- 如果任务已经不存在了,关闭 BitComet(防止文件句柄占用)。
- 从磁盘上手动删除残留的
.bc!文件。
下载完成后 .bc! 后缀没自动去掉
罕见 bug。手动处理:
- 确保这个任务在 BitComet 里显示"下载完成 / 做种中"。
- 在 BitComet 里右键它 → "重新校验"。
- 校验通过后 BitComet 应该会自动去掉后缀。
- 如果还不行,暂停任务、关闭 BitComet、手动重命名去掉
.bc!后缀、再重启 BitComet(它会重新扫描这个文件)。
临时文件被杀毒软件删了
有些杀毒软件(特别是比较激进的免费版)会把 .bc! 文件里的部分数据块误判为病毒——即使文件还在下载过程中就偷偷删掉。表现为:
- BitComet 突然报错"文件损坏 / 校验失败"。
- 下载进度突然回退。
.bc!文件大小莫名变小。
对策:把 BitComet 的下载目录加入杀毒软件的"实时扫描例外"或"白名单"。具体操作参考你用的杀毒软件的帮助说明。