Functions > FileDirDisk >


FileGetEncoding

Obtient l'encodage du texte utilis� dans un fichier.

FileGetEncoding ( "filehandle/filename" [, mode = 1] )

Param�tres

filehandle/filename Le handle d'un fichier, tel que retourn� par FileOpen(). Sinon, vous pouvez utiliser le chemin d'acc�s d'un fichier comme premier param�tre.
mode [optionnel] Le mode de d�tection UTF8 � utiliser.
    $FE_ENTIRE_UTF8 (1) = V�rifie la totalit� du fichier pour des s�quences UTF8 (par d�faut)
    $FE_PARTIALFIRST_UTF8 (2) = V�rifie la premi�re partie du fichier pour des s�quences UTF8 (identique � la v�rification par d�faut de FileOpen())

Les constantes sont d�finies dan FileConstants.au3.

Valeur de retour

Succ�s: Retourne l'encodage du fichier en utilisant des valeurs similaires � la fonction FileOpen():
    $FO_UTF16_LE (32) = UTF16 Little Endian.
    $FO_UTF16_BE (64) = UTF16 Big Endian.
    $FO_UTF8 (128) = UTF8 (avec BOM).
    $FO_UTF8_NOBOM (256) = UTF8 (sans BOM).
    $FO_ANSI (512) = ANSI (contenant des caract�res > 127 et < 255)
�chec: Retourne -1.

Remarques

Si un fichier est donn� plut�t qu'un handle, le fichier sera ouvert puis ferm� durant l'appel de fonction.
Note: Ne m�langez pas les handles de fichier et les noms de fichiers, par exemple, n'utilisez pas FileOpen() pour ensuite utiliser le nom du fichier dans cette fonction. Utilisez les handles ou les noms de fichiers dans votre routine, mais pas les deux.

Si un handle de fichier est utilis� alors le param�tre "mode" n'a aucun effet - Le mode utilis� pour FileOpen() prend la priorit�.

En relation

FileOpen, FileRead, FileReadLine, FileWrite, FileWriteLine

Exemple

#include <MsgBoxConstants.au3>

Example()

Func Example()
    Local $iEncoding = FileGetEncoding(@ScriptFullPath) ; Obtient l'encodage du fichier du script courant.
    If @error Then
        MsgBox($MB_SYSTEMMODAL, "", "Erreur: Impossible d'obtenir l'encodage du fichier.")
    Else
        MsgBox($MB_SYSTEMMODAL, "", "FileGetEncoding: La valeur return�e est: " & $iEncoding) ; La valeur renvoy�e pour cet exemple doit �tre de 0 ou ANSI.
    EndIf
EndFunc   ;==>Example