At 11:34 AM 7/20/00 -0800, John Cowan wrote:
> > 1. Could it be using UTF-16LE? I tried creating an entry with a
> > surrogate pair, but the name was displayed with two black boxes on a
> > Windows 2000-based computer, so I assumed that surrogates were not
> > supported.
>
>Probably not.  So technically it *is* UCS-2 (LE) rather than UTF-16LE.

If the data has a BOM it's UTF-16, if it doesn't, but is known to be little 
endian it's UTF-16LE.

Seeing two boxes is not conclusive. If the file system happily stores these 
at the original code points, then *it* would support UTF-16, even if the 
shell, or the text output API underneath it, that was used to display the 
name does not.

Only by looking at the string with a debugger would you know for sure that 
VFAT indeed kept the string and didn't mangle the string.

One other possible test would be to try to present the file system with a 
string that's longer than the maximum number of characters, where the last 
character is an unpaired surrogate - it would be interesting to see what it 
does.

A./

Reply via email to