Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Jan 2005 18:25:52 -0800
From:      David Yu <chiahsing@gmail.com>
To:        Christopher Vance <christopher@nu.org>
Cc:        freebsd-current@freebsd.org
Subject:   Re: NTFS unicode converting problem
Message-ID:  <ad2ada4b05011618258c80402@mail.gmail.com>
In-Reply-To: <20050117020039.GB630@nu.org>
References:  <ad2ada4b05011613445601befe@mail.gmail.com> <20050117020039.GB630@nu.org>

next in thread | previous in thread | raw e-mail | index | archive | help
In my case, those Chinese filenames are still in UCS-2LE, and all
characters are in plane 0. I tried to modify codes so that it can
directly store the conversion result into the dirent structure, but
the convchr() funtion failed everytime for Chinese character while
there is no problem with Ascii characters. I thought converting from
UCS-2 to UTF-8 should be very easy?

On Mon, 17 Jan 2005 13:00:39 +1100, Christopher Vance
<christopher@nu.org> wrote:
> On Sun, Jan 16, 2005 at 01:44:04PM -0800, David Yu wrote:
> >Hi, it seems that NTFS in FreeBSD uses a 16-bit long wchar to store
> >filename. When I wanted to convert some Chinese filename into UTF-8,
> >the conversion  was failed because a single Chinese character needs 3
> >bytes in UTF-8. Is anyone already working on this problem? If not, I
> >would like to do something about it. Any suggestions?
> 
> From memory, old Windows used UCS-2, while newer Windows uses UTF-16.
> Was the bad character in plane 0 or higher?
> 
> --
> Christopher Vance
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ad2ada4b05011618258c80402>