Filename encoding on XP

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • kent sin

    #1

    Filename encoding on XP

    What encoding does the NTFS store the filename?

    I got some downloaded files, some with Chinese filename, I can not
    backup them to CD because the name is not accepted.

    I use walk, then print the filename, there are some ? in it, but some
    Chinese characters were display with no problem. I suspect the
    encoding of the filename is not unicode. How do I find out more about
    this?

    --
    Sin Hang Kin.
  • =?UTF-8?B?Ik1hcnRpbiB2LiBMw7Z3aXMi?=

    #2
    Re: Filename encoding on XP

    kent sin schrieb:
    What encoding does the NTFS store the filename?
    In UTF-16LE. However, on-disk storage is mostly irrelevant, what
    matters is what encoding is used on the OS API.

    Windows has two forms of file API: Wide (Unicode) and ANSI
    (byte-oriented). On NT, the Wide API is "native"; the ANSI API
    converts strings forth and back (introducing ? if the conversion
    fails).
    I use walk, then print the filename, there are some ? in it, but some
    Chinese characters were display with no problem. I suspect the
    encoding of the filename is not unicode.
    You need to pass a Unicode string into walk as the directory; then
    recursively all results should also be Unicode strings.

    Regards,
    Martin


    Comment

    Working...