From: Alexander Grund (alexander.grund_at_[hidden])
Date: 2020-06-12 07:37:28
Am 11.06.20 um 19:15 schrieb degski:
> As a Windows user, I find this library less and less attractive. W10
> is now optionally fully Unicode/utf8, there is no reason to have
> anything else than
> https://github.com/degski/Sax/blob/master/include/sax/utf8conv.hpp or
> something like it and do perimeter conversions with these two
> functions, specifically for windows. `std::filesystem` (and other bits
> of the STL) does the right thing.Â The original author worked at
> Microsoft at the time and the code was published on the Windows blog,
> i.e.this is how it is done.
Thanks for the input. On that:
- The "optional" UTF-8 (via Manifest) is only available in recent enough
Windows versions. Our company Windows does not support it (It seems to
be some kind of LTS release)
- The code uses the WinAPI for the conversion with exceptions on errors
while Nowide uses replacements. I guess it's choose your poison
- That conversion code requires C++17, Boost.Nowide provides support for
Boost.Filesystem and std::filesystem without requiring C++17
I do wish that a day comes without needing the wide API at all anymore
but this day is not today.
Until then: If you can require recent enough Windows versions go for the
Manifest. For the others there is Boost.Nowide.
PS: sax looks like a cool collection of utils, well done!
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk