UDF > WinAPIEx > Conversion >


_WinAPI_WideCharToMultiByte

Convertit une cha�ne UTF-16 (caract�res larges) en une cha�ne multi-octets

#include <WinAPIConv.au3>
_WinAPI_WideCharToMultiByte ( $vUnicode [, $iCodePage = 0 [, $bRetNoStruct = True [, $bRetBinary = False]]] )

Param�tres

$vUnicode Cha�ne, DllStruct ou Pointeur sur une structure de tableau d'octets contenant le texte � convertir
$iCodePage [optionnel] La page de code � utiliser dans la conversion:
    0 - La page de code Windows ANSI du syst�me actuel
    1 - La page de code OEM du syst�me actuel
    2 - La page de code Macintosh du syst�me actuel
    3 - La page de code Windows ANSI pour le thread courant
    42 - La page de code Symbol
    65000 - UTF-7
    65001 - UTF-8
$bRetNoStruct [optionnel] Flag qui indique s'il faut retourner une String/Binary ou une DllStruct (par d�faut True: String/Binary)
$bRetBinary [optional] Flag qui indique s'il faut retourner une Binary String ou une String (par d�faut False: String)

Valeur de retour

Succ�s: Retourne un string/binary ou une DllStruct contenant une string/binary multi-octets
�chec: D�finit @error <> 0, appelez _WinAPI_GetLastError() pour obtenir des informations suppl�mentaires sur l'erreur.

Remarques

Mappe une cha�ne UTF-16 (caract�res larges) en une nouvelle cha�ne de caract�re.
La nouvelle cha�ne de caract�res ne provient pas n�cessairement d'un jeu de caract�res multi-octets.

Le flag $bRetBinary est con�u pour les utilisateurs de pages de codes multi-octets et force la fonction � retourner une cha�ne binaire termin�e par 0 ou une structure la contenant en fonction de $bRetNoStruct.

Le flag $bRetNoStruct d�termine si la fonction doit retourner uniquement la string/binary ou la structure enti�re.

En relation

_WinAPI_MultiByteToWideChar

Voir aussi

Consultez WideCharToMultiByte dans la librairie MSDN.

Exemple

#include <WinAPIConv.au3>
Global Const $CP_SHIFT_JIS = 932

Local $sTest
Local $sText = "データのダウンロードに失敗しました。"

$sTest = _WinAPI_WideCharToMultiByte($sText, $CP_SHIFT_JIS, True, False)
MsgBox($MB_SYSTEMMODAL, "Title Sring",$sText & @CRLF & VarGetType($sTest) & " " & StringLen($sTest) & ": '" & $sTest & "'")

$sTest = _WinAPI_WideCharToMultiByte($sText, $CP_SHIFT_JIS, True, True)
MsgBox($MB_SYSTEMMODAL, "Title Binary",$sText & @CRLF & VarGetType($sTest) & " " & StringLen($sTest) & ": '" & $sTest & "'")