BitComet 中文文档 下载 App

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! 后缀主要是为了保护正在下载的文件不被其他程序干扰:

  1. 防止被其他下载器接管:如果你同时用多个下载器(比如 BitComet 和 qBittorrent),.bc! 后缀让 qBittorrent 一看就知道"这是 BitComet 正在下的,别碰"——反过来也一样。不同下载器的临时文件后缀各不相同(qBittorrent 用 .part、uTorrent 用 .!ut、迅雷用 .xltd)。
  2. 防止被视频播放器错误打开:如果一个视频文件下载到 60% 就被播放器当完整文件打开,可能会播到一半崩掉或报错。加后缀后播放器不认识这个格式。
  3. 防止被杀毒软件扫到:有些杀毒软件会扫描下载目录里的所有文件、包括还没下载完的——临时文件后缀可以让杀毒软件忽略这些半成品。

文件内容是什么

.bc! 文件内部到底存了什么取决于 BitComet 当前下载到哪个阶段:

阶段一:刚启动下载(智能磁盘分配开启)

开启"智能磁盘分配"(BitComet 默认行为)后,下载刚开始时 BitComet 会先创建一个完整大小的空文件——比如你要下一个 10GB 的 ISO,BitComet 立刻在磁盘上创建一个 10GB 的 .bc! 文件,里面全是零字节数据(NTFS 下可能显示为"稀疏文件",实际不占满 10GB 空间)。

阶段二:下载进行中

BitComet 把从对等者那里拉到的 BT 分片数据写入这个临时文件对应的位置——分片是乱序到达的,所以文件内部也是零字节和真实数据交错分布。BT 分片通常是 256KB ~ 4MB 一块,每块都有独立的 SHA-1 哈希校验。

阶段三:下载完成

所有分片都下载完并通过哈希校验后,BitComet 把临时文件的 .bc! 后缀去掉——文件变成一个完整、可用的目标文件。

阶段四:校验失败

极少情况下文件全部下载完但哈希校验不通过——BitComet 会定位到是哪个分片损坏了、重新下载那几个分片、再次校验。这期间文件还是 .bc! 后缀,直到校验通过才去掉。

下载中途断电/崩溃了怎么办

如果 BitComet 正在下载时突然崩溃或电脑断电,下次重启 BitComet 会:

  1. 扫描下载目录里所有 .bc! 文件。
  2. 根据文件内部的分片哈希表重新做一轮完整性校验——哪些分片是好的、哪些需要重新下载。
  3. 从断点继续下载——已经下载好的分片保留,损坏的重新请求。

这是 BT 协议分片设计的原生好处——单个分片损坏只重下那一个 256KB 或 1MB 的块,不是整个文件重来。

能手动删除 .bc! 文件吗

可以,但要搞清楚你在做什么:

删除一个正在下载中的 .bc! 文件

会丢失这个任务已下载的所有数据。下次 BitComet 重启后会认为这个任务从头开始下载——重新创建临时文件、重新下载所有分片。等于白下了已经完成的那部分。

删除一个已暂停的 .bc! 文件

同样会丢失已下载数据——暂停不代表 BitComet 不再关心这个文件。如果你想彻底取消一个下载任务:

  1. 先在 BitComet 任务列表里删除这个任务(右键 → 删除)。
  2. BitComet 会同时删除对应的 .bc! 临时文件。
  3. 如果 BitComet 没自动删(罕见 bug),再手动从磁盘上删。

想"抢救"一个下载了一大半的 .bc! 文件

如果你发现 BitComet 坏了、或者想把未完成的任务转给其他 BT 客户端,理论上可以:

  1. 不要手动改后缀——直接把 .bc! 文件(和对应的 torrent 文件)一起复制到新位置。
  2. 用另一个 BT 客户端(qBittorrent、Vuze 等)打开 torrent 文件,让它从同一个目录继续下载。
  3. 其他 BT 客户端会扫描 .bc! 文件(它们不认识 .bc! 后缀但能认出文件里的 BT 分片结构)、做哈希校验、继续下载。

但实际上 BitComet 的临时文件管理逻辑和其他 BT 客户端不完全一致——有些其他客户端可能不识别 .bc! 后缀、会认为目录是空的。这种情况下你可以试试把 .bc! 后缀手动改成 torrent 里声明的原始文件名(比如 Ubuntu-22.04-desktop-amd64.iso),然后让新客户端从同一个目录继续。

临时文件目录在哪里

默认情况下 .bc! 文件存放在BitComet 的默认下载目录里——就是选项 → 任务设置里的"默认下载目录"。有的版本会在下载目录下创建一个 BitComet 子文件夹来存放。

如果找不到 .bc! 文件:

常见问题

.bc! 文件占了大量磁盘空间但下载没在跑

可能是残留的临时文件——BitComet 之前崩溃过、任务没清理干净就重启了,或者你手动删除了任务但文件留在磁盘上了。

处理方法:

  1. 先在 BitComet 任务列表里确认这个任务真的不存在了(如果还存在就继续下载,不要手动删文件)。
  2. 如果任务已经不存在了,关闭 BitComet(防止文件句柄占用)。
  3. 从磁盘上手动删除残留的 .bc! 文件。

下载完成后 .bc! 后缀没自动去掉

罕见 bug。手动处理:

  1. 确保这个任务在 BitComet 里显示"下载完成 / 做种中"。
  2. 在 BitComet 里右键它 → "重新校验"。
  3. 校验通过后 BitComet 应该会自动去掉后缀。
  4. 如果还不行,暂停任务、关闭 BitComet、手动重命名去掉 .bc! 后缀、再重启 BitComet(它会重新扫描这个文件)。

临时文件被杀毒软件删了

有些杀毒软件(特别是比较激进的免费版)会把 .bc! 文件里的部分数据块误判为病毒——即使文件还在下载过程中就偷偷删掉。表现为:

对策:把 BitComet 的下载目录加入杀毒软件的"实时扫描例外"或"白名单"。具体操作参考你用的杀毒软件的帮助说明。