[R] Enlever les accents

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
babou
Niveau 1
Niveau 1
Messages : 3
Enregistré le : mer. 04 juin 2008 10:49
Status : Hors ligne

[R] Enlever les accents

#1

Message par babou »

Bonjour :D

Je suis entrain de lister les fichiers d'un repertoire et je les ecris en majuscule dans un fichier xml.
Seulement j'ai un soucis d'accent, les noms des fichiers listés en majuscule dans le fichier .xml, sont ecrit avec les accents. Je souhaite enlever ses accents car la base dans laquel j'injecte ensuite ne gère pas les accents :( .

Pourriez vous me dire comment procéder, je pensais transformer le charactereset du fichier mais je ne sais pas comment faire. Peut etre existe t'il une fonction dans autoit ou une variable, mais pareil je ne la connais pas.

Voici comment je procède :

Code : Tout sélectionner

Const $FLAG2CHECK = "FLG;OK;REM;IMP"
Const $SECTION_TITLE = "DIRECTIONS;APPLICATIONS;A_DESINSTALLER;IMPRIMANTES"
Const $PATH = "C:\SI"
Const $OUTDIR = "C:\PRECISION\Data\CustomInventory"
Const $FILENAME = "CustomInventory.xml"

Dim $VAR, $I, $FILE, $SEARCH, $VAR2, $TXT

;~ Analyse des flags présents dans C:\SI et génération d'un contenu XML dans $TXT

$VAR = stringsplit($FLAG2CHECK,";")
$VAR2 = StringSplit($SECTION_TITLE,";")

$TXT = "<?xml version=" &chr(34) &"1.0" &chr(34) & " encoding=" & chr(34) &"UTF-8" &chr(34) & " ?>" & @CR
$TXT = $TXT & "<CUSTINVENTORY>" & @CR
For $I = 1 to $VAR[0]
    $SEARCH = FileFindFirstFile($PATH &"\*." & $VAR[$I])
    If $SEARCH <> -1 Then
        $TXT = $TXT & "<OBJECT name=" &chr(34) & $VAR2[$I] &chr(34) & " type=" &chr(34) & $VAR2[$I] &chr(34) &">" & @CR
        $TXT = $TXT & "<ATTRIBUTES>" & @CR
        While 1
            $FILE = FileFindNextFile($SEARCH) 
            If @error Then ExitLoop
            $FILE = STRINGUPPER($VAR[$i] & "-" & Stringreplace(STRINGLEFT($FILE,StringInStr($FILE,".",0,-1)-1),".","-"))
            $TXT = $TXT & "<ATTRIBUTE name=" & chr(34) & stringupper($FILE) & chr(34) & " type=" & chr(34) & "String"  &chr(34) & ">" & stringupper($FILE) & "</ATTRIBUTE>" & @CR
        wend
        $TXT = $TXT & "</ATTRIBUTES>" & @CR
        $TXT = $TXT & "</OBJECT>" & @CR
    endif
next
$TXT = $TXT & "</CUSTINVENTORY>" & @CR

;~ Il faut maintenant écrire le contenu de $TXT dans le fichier CustomInventory

if not fileexists($OUTDIR) then DirCreate($OUTDIR)

$FILE = FileOpen($OUTDIR & "\" & $FILENAME,2)
if @error = - 1 Then
    msgbox(16,"Erreur !","Impossible d'ouvrir " & $OUTDIR & "\" & $FILENAME & " en écriture.")
    exit
Else
    Filewrite($FILE,$TXT)
EndIf
FileClose($FILE)
 

Merci beaucoup
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Enlever les accents

#2

Message par Tlem »

Ceci répond t-il à vos attentes ?
http://www.autoitscript.fr/forum/viewto ... =21&t=1072
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
babou
Niveau 1
Niveau 1
Messages : 3
Enregistré le : mer. 04 juin 2008 10:49
Status : Hors ligne

Re: [..] Enlever les accents

#3

Message par babou »

Oui carrement :D

Merci beaucoup
Répondre