Platform SDK: Files and I/O

Long File Names

The operating system stores the long file names on disk as special directory entries. When you create a long file name, the operating system creates a corresponding short 8.3 form of the name.

The operating system stores the long file names on disk in Unicode. This means that the original long file name is always preserved, even if it contains extended characters, and regardless of the code page that is active during a disk read or write operation. The case of the file name is preserved, but the file system is not case-sensitive.

The valid character set for these long file names is the NTFS character set, less one character: the colon (':') that NTFS uses for opening alternate file streams. This means that you can freely copy files between NTFS and FAT partitions without losing any file name information.