Boost logo

Boost :

Subject: Re: [boost] [nowide] Request for interest (nowide unicode support for windows)
From: Alexander Lamaison (awl03_at_[hidden])
Date: 2010-06-17 06:52:59

On Wed, 16 Jun 2010 23:50:39 -0700 (PDT), Artyom wrote:

>>> There are more. What about filesystem::remove and others?
>>> From what I see in the code, it supports only path and not wpath
>> Really? I doubt that. In FSv2 it takes a template path:
> I was talking about v3

v3 makes it even easier. Internally it always calls RemoveFileW on Windows
regardless is whether the path was created from a narrow or wide string.

>> Why? Boost.Filesystem v3 almost does all of this already. It would need
>> two changes to make it work exactly as you want:
>> - Interpret narrow strings as UTF-8 by default on Windows (the user
>> could always imbue it with the local code page facet if the really
>> wanted to interact with the 'A' versions of Windows APIs).
> This is not solution:
> Windows had never supported, does not support according to Lars Viklund
> links it seems like it will never be supported.

I think you misunderstood me. I meant Boost.Filesystem could interpret
narrow strings as UTF-8 by default on Windows. Then it can convert it and
store it internally as a wide string (it already does this) then its
operations, remove, fstream etc., can call the W versions of Windows API
function (which, again, it already does)

> So the only way to do the thing right is **always** use
> Wide API on windows and convert normal strings to wide one just before
> calling apropriate API functions.

Yes. Except that Filesystem handles this by converting immediately. It
makes little difference.


Easy SFTP for Windows Explorer (

Boost list run by bdawes at, gregod at, cpdaniel at, john at