Для UTF-16 мы можем читать и преобразовывать его в wchar
одновременно. Например,
std::wifstream* file = new std::wifstream(name, ifstream::binary);
locale lo = locale(file->getloc(), new std::codecvt_utf16<wchar_t, 0x10ffff, std::little_endian>);
file->imbue(lo);
Как я могу сделать то же самое для ввода UTF-32?