Appendix E - How Macintosh Filenames Are Translated

Archived content. No warranty is made as to technical accuracy. Content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

Information in this appendix supplements information provided in Chapter 16, "How Services for Macintosh Works."

Windows NT, Macintosh, and MS-DOS systems each follow different file-naming conventions:

Operating system

File system

Character limit

MS-DOS

FAT

8.3 (8 characters, plus an optional extension, signaled by a period and up to 3 characters)

Macintosh

System software

31 characters

Windows NT

NTFS

256 characters

When a file with a long name (any name over the 8.3 MS-DOS standard) is saved on an NTFS partition, the long name is maintained and a short name is created so that MS-DOS users can gain access to the file if they have permission to do so. For example, Macintosh users who create folders or files on an SFM volume and use the 31-character limit will see the original, long names. MS-DOS users, however, will see a shortened version of the name. Windows NT system users will see the longer Macintosh filenames because NTFS has a 256-character filename limit.

Even though NTFS translates long names to short names, it's a good idea for users to name shared files following the 8.3 convention used by the FAT file system in MS-DOS. This simplifies file identification for users working on different platforms. This appendix explains how file translations work on Windows NT Servers running SFM. For more information, refer to the Windows NT Server Concepts and Planning Guide.

Naming Differences

In general, the FAT file naming system, which is used on MS-DOS systems, is more restrictive than the Macintosh system. The two systems differ in the following ways:

  • Macintosh filenames and folder names can have as many as 31 characters and include blank spaces. FAT filenames and directory names can have as many as eight characters, followed by an optional extension (signaled by a period and up to three additional characters), and they cannot include blank spaces.

  • Macintosh filenames and folder names can include any Macintosh character except a colon (:). MS-DOS filenames and directory names have more exceptions, such as the following: 

    / [ ] ; = " \ : | , * . (except the period signaling the extension)

  • Both Macintosh and MS-DOS filenames and folder names (or directory names) can include extended characters; however, the Macintosh and MS-DOS extended character sets are different.

FAT filenames and directory names are acceptable as Macintosh filenames and folder names unless they contain extended characters not found in the Macintosh character set. In such cases, Macintosh users will see valid characters substituted for the invalid ones.

Overview of Macintosh-to-8.3 Translation

When a file is created on a Macintosh and saved on a computer running Windows NT Server, the File Server for Macintosh first checks it for illegal NTFS characters. Then NTFS takes over the file translation process.

What File Server for Macintosh Does

When a Macintosh filename is saved on a computer running Windows NT Server, the File Server for Macintosh component of SFM does the following:

  • If required, the File Server for Macintosh changes illegal NTFS characters to the available range of Unicodeâ„¢ characters, which are then mapped to the ANSI default character—a question mark (?). The following are the illegal NTFS characters: 

    " / \ * ? < > | : 

What NTFS Does

When NTFS receives a legal NTFS name from the File Server for Macintosh, it translates the name as follows:

  • Macintosh names that are valid MS-DOS names do not change: The long name and short name are the same. For example, Sample.art remains Sample.art. 

  • Long names) are truncated to six characters, followed by a tilde (~) and a unique number, for a total of eight characters (not including any extension). 

  • The last period (if any) in a long name signals the extension, which is retained.

In detail, here is what the File Server for Macintosh and Windows NT Server do to translate a valid long filename to a short name that MS-DOS users can see:

  1. NTFS then shortens a long name to the first six characters of the Macintosh name, followed by a tilde (~) and a unique number. For example, the Macintosh long name Project Overview is translated to Projec~1

  2. If the short name is a duplicate of another name (long or short), NTFS automatically modifies the short name of the new file or folder by truncating the name to six characters and adding a tilde (~) and number until it creates a unique name. 

    For example, suppose a Macintosh user creates a file called Regional Data-East Coast. NTFS renames that file REGION~1. Next, the user creates a file named Regional Data-West Coast. That file becomes REGION~2. A third file, Regional Data-Europe, becomes REGION~3

  3. If the original name has an extension (signaled by the last period in the name), it is retained. For example, Project Overview.Jan.txt becomes Projec~1.txt.

Note If a Macintosh user gives a file or a folder a valid MS-DOS name, making translation to a short name unnecessary, the user might see a message that states that the name already exists, and that the user must choose a new name. For example, this message appears if the user creates a file named Sales.dat when another file in the folder already has that name.

How Extended Characters Are Mapped

If Macintosh extended characters are used in filenames or folder names that are saved to the computer running Windows NT Server by Macintosh users, the File Server for Macintosh translates these extended characters to the equivalent Unicode characters so that PC users can see them.

If MS-DOS extended characters are used in filenames or directory names that are saved to the computer running Windows NT Server by PC users, the File Server for Macintosh also translates these extended characters to the equivalent Macintosh ANSI characters so that Macintosh users can see them.

Cc751487.spacer(en-us,TechNet.10).gif