Dzięki za odpowiedź.
Piszę pod linuxa, ale chciałem też zachować przenośność, żeby się nauczyć takiego programowania.
Mam kolejne pytanie.
Jeżeli będę przechowywał nazwę pliku/katalogu (te z fata) w
u16string
i do interakcji z użytkownikiem będę używał Qt. To czy mam rzutować wszystkie ścieżki od użytkownika (te z Qt) do utf-8 za pomocą QByteArray QString::toUtf8() const
i potem nazwę pliku też do utf-8? Czy rzutować ścieżki od użytkownika do utf-16 <code class="cpp">const ushort * QString::utf16() const
i tworzyć z tego nowy obiekt u16string
?
Mógłbym też nazwę pliku/katalogu od razu rzutować na QString, ale nie wiem czy to będzie fajne bo chciałem oddzielić część "nisko poziomową" od GUI w Qt.
> ##### [Azarien napisał(a)](http://4programmers.net/Forum/1127542):
> > Myślałem o
> > std::vector<char16_t>
>
>
> od tego jest `std::basic_string`. zwykły string to `basic_string<char>`, wstring to `basic_string<wchar_t>` itp.
Tak wiem potem znalazłem ;)
EDIT
Wymyśliłem coś takiego, jeżeli ktoś ma uwagi/radę to chętnie wysłucham.
Ścieżki z Qt będę konwertował do
```cpp
std::string
, który jak poczytałem, będzie miał w sobie napis w utf-8.
Po wydobyciu z FAT'a nazwy pliku od razu z
std::u16string
przekonwertuje go do std::string
, który również będzie miał w sobie uft-8.
Takie podejście w sumie wszystko załatwia
Jak ktoś ma lepszy pomysł to śmiało :)