换新电脑,把旧硬盘里的 iTunes 目录整个拷过来,双击图标就弹框:不能读取文件「iTunes Library.itl」,因为此文件由更高版本的 iTunes 创建。多年攒的播放列表、评分、播放次数全在里面,手不敢乱动。
.itl 是 iTunes 的资料库索引,二进制格式,版本只向上兼容。新版 iTunes 能读旧版 itl 并自动升级,旧版读新版直接报错。所以这个提示基本指向两件事:当前装的 iTunes 比写这个库的版本旧,或者文件在拷贝、断电时写坏了。为了同步老 iPhone 特意降级 iTunes 的人,踩的多半是第一种。
动手前先把整个目录复制一份
默认路径是 C:/Users/你的用户名/Music/iTunes/,关键文件是 iTunes Library.itl,同目录还有 iTunes Music Library.xml 和 Previous Libraries 文件夹。把整个 iTunes 目录复制到 D 盘或移动硬盘,这份拷贝是唯一的后悔药,后面所有操作都基于它做。
版本不匹配怎么处理
- 把 iTunes 升到不低于原来用的版本号,重新打开,itl 会被正常读取并就地升级
- 必须留在旧版:先把 itl 改名成 iTunes Library.itl.bak,iTunes 会新建一个空库,再从同目录的 iTunes Music Library.xml 导入
- XML 只保留歌曲元数据和播放列表,播放次数和部分评分找不回来,这点要提前接受
判断版本的办法:右键 iTunes.exe 看属性里的文件版本,再对比 itl 的修改时间。itl 时间明显晚于你上次用这个 iTunes 的时间,说明它确实被更高版本写过。
文件损坏的几个特征
用十六进制编辑器打开 itl 看开头几十字节,正常文件有固定的结构标识,坏掉的多半是一片 00 或者明显乱码。也可以看大小,平时几十 MB 的库突然变成 0 字节、4 KB,就是没写完。这种情况只能去 Previous Libraries 目录里翻最近一次自动备份的 itl,改回原名替换。
iTunes 每次正常退出都会往 Previous Libraries 留一份旧 itl,升级前那一份通常还在里面,比数据恢复软件省事。真要说取舍:播放列表值钱就用 XML 重建,播放次数和评分值钱就先翻 Previous Libraries,两样都要就别再碰原目录,拿备份慢慢试。