Maison > développement back-end > C++ > Comment puis-je convertir en toute sécurité une chaîne UTF-8 en wstring en C ?

Comment puis-je convertir en toute sécurité une chaîne UTF-8 en wstring en C ?

Linda Hamilton
Libérer: 2024-12-18 03:04:09
original
126 Les gens l'ont consulté

How Can I Safely Convert a UTF-8 String to a wstring in C  ?

C : Conversion d'une chaîne en wstring tout en préservant l'encodage

Vous recevez une chaîne contenant des caractères japonais et souhaitez attribuer son contenu à une corde, ws. La tâche consiste à effectuer cette tâche sans introduire de problèmes d'encodage.

Solution :

En utilisant C 11 et supérieur, cette tâche peut être accomplie uniquement avec la bibliothèque standard.

Étape 1 : Inclure les éléments nécessaires En-têtes

#include <locale>
#include <codecvt>
#include <string>
Copier après la connexion

Étape 2 : Créer un convertisseur

std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
Copier après la connexion

Ce convertisseur gérera la conversion entre UTF-8 (l'encodage des s) et UTF-16 (l'encodage de ws).

Étape 3 : Convertissez la chaîne en un wstring

std::wstring ws = converter.from_bytes(s);
Copier après la connexion

Exemple :

std::string s = "おはよう";
std::wstring ws;

std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
ws = converter.from_bytes(s);
Copier après la connexion

Remarque :

  • Cette solution suppose s contient des données Unicode codées en UTF-8 valides.
  • Pour un encodage plus complexe scénarios, pensez à utiliser std::codecvt_utf8.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal