Je rencontre des problèmes lors de l'ouverture d'un fichier Unicode en C++ à l'aide de fstream au lieu des anciennes fonctions de gestion de fichiers basées sur FILE. Lors de l'ouverture d'un fichier en utilisant _wfopen, je peux spécifier un mode pour lui dire quel encodage de caractères utiliser. Par exemple:wifstream équivalent au paramètre "mode" de _wfopen?
_wfopen_s(&file, fileName, unicode ? L"r+, ccs=UTF-16LE" : L"r+");
Cela fonctionne très bien. Cependant, lorsque j'utilise wifstream, j'obtiens à la fois la marque de l'ordre des octets au début du fichier et le reste du fichier apparaît dans la mémoire entrelacée avec 0x00. De toute évidence, il suffit de lire dans chaque caractère comme un octet.
Ma question est: est-il un équivalent au paramètre « mode » ci-dessus pour une utilisation avec fstreams? Ce n'est pas terrible s'il n'y en a pas, je préfère simplement la syntaxe des flux sur les fichiers.
Merci!