答案1
归根结底,我认为这只是术语上的简单误解。您看到的文件名类似于IMG_20~1.JP0为了向后兼容,采用了传统的 8.3 格式:
如果需要,Windows 会将文件名截断为六个字符,并附加一个波浪符号 (~) 和一个数字。例如,创建的每个唯一文件名都以“~1”结尾。重复的文件名以“~2”、“~3”等结尾。
(来源: Windows 如何从长文件名生成 8.3 文件名)
换句话说,每个文件名都可能有一个 8.3 格式的等价物。您可以通过在命令提示符窗口中导航到任何给定文件夹并执行命令来显示所有文件dir /x
。但是,尽管您不会在该特定视图中看到它,但文件在后台仍保留了较长(或现代)的文件名。
您的外部驱动器可能存在某种类型的磁盘完整性问题,导致操作系统要求您如此频繁地运行 CHKDSK。本质上,在 CHKDSK 过程中,它会遇到问题,导致创建某些文件的完整和/或部分重复,以旧式 8.3 格式显示它们,并将文件类型从JPG到JP0,JP1等,以避免与原始文件发生冲突。但请记住,“在幕后”,您看到的带有 8.3 文件名的文件(例如IMG_20~1.JP0) 的文件名仍然较长。当您尝试将文件类型从 JP0 更改为 JPG 时,就会发现这一点:旧版 8.3 文件具有未见过的全长文件名完全相同的到您的原始 JPG 文件,因此当您尝试将其更改为 JPG 扩展名时,它会告诉您该文件名已存在。
结论如下:你看到的是相同的文件名,一个以旧版 8.3 格式显示,而另一个则以现代长文件名格式显示。它们可以共存于同一个文件夹中,因为它们具有不同的文件扩展名,但是当您尝试改变该旧文件的扩展名与较长的文件名相匹配,操作系统就会正确地告诉您它已经存在。
这个问题的根本原因似乎是你的外置硬盘。硬盘的文件系统有问题,或者硬件有问题……甚至两者都有。但希望我已经帮你解开了背后的谜团“此位置已有一个同名文件。”