When a computer file system stores file names, the computer may keep or discard case information. When the case is stored, it is called case preservation.
A system that is not case-preserving is necessarily case-insensitive, but it is possible and common for a system to be case-insensitive, yet case-preserving. This combination is often considered most natural for people to understand, because most people prefer using the correct capitalization but will still recognize others. For example, if someone refers to the "uNiTeD states oF AMERICA," it is understood to mean the United States of America, even though the capitalization is incorrect.
macOS, current versions of the Microsoft Windows operating systems and all versions of Amiga OS are case-preserving and case-insensitive in most cases. Since they are case-insensitive, when requesting a file by name any capitalization can be used, in contrast to case-sensitive systems where only a single capitalization would work. But as they are case-preserving, when viewing a file's name it will be presented with the capitalization used when the file was created. On a non-case-preserving system, arbitrary capitalization would be displayed instead, such as all upper- or lower-case. Also, in case-insensitive but case preserving file systems there cannot be a readme.txt and a Readme.txt in the same folder.
Examples of systems with various case-sensitivity and case-preservation exist among file systems:
Case-sensitive | Case-insensitive | |
---|---|---|
Case-preserving | UFS, ext3, ext4, HFS Plus (optional), NTFS (in unix), APFS (optional) | VFAT, FAT32 which is basically always used with long filename support, NTFS, HFS Plus, APFS |
Non-case-preserving | Impossible | FAT12, FAT16 only when without long filename support. |