
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. Alex -- Easy SFTP for Windows Explorer (http://www.swish-sftp.org)