Retourner valeur à partir d'une chaine dans un fichier

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Kreg
Niveau 1
Niveau 1
Messages : 11
Enregistré le : jeu. 06 juin 2013 10:00
Status : Hors ligne

Retourner valeur à partir d'une chaine dans un fichier

#1

Message par Kreg »

Hello les scripteurs,

J'appel à votre aide pour un besoin simple qui me pose problème.
Depuis un fichier.ini, je souhaite chercher et utiliser certaines valeurs.
Par exemple, je souhaiterais récupérer la chaine de caractères de la ligne 2 après le 1= (mais sans faire apparaitre le 1=)

Mon fichier .ini ressemble à ça

Code : Tout sélectionner

[Data]
0=10
1=C:\Temp\IN
2=C:\Temp\OUT
3=5
4=C:\IN
5=C:\OUT
Ouvrir mon fichier, et lire la ligne 2 ça j'y arrive bien :lol:
Mais comment n'afficher que ce qui m'intéresse ?
Au mieux pour l'instant je n'arrive qu'à afficher un nombre...

Code : Tout sélectionner

#include <FileConstants.au3>
#include <MsgBoxConstants.au3>

Local $sFilePath = @ScriptDir & "\Test.ini"
Local $hFileOpen = FileOpen($sFilePath, $FO_APPEND + $FO_CREATEPATH)
If $hFileOpen = -1 Then
   MsgBox($MB_SYSTEMMODAL, "", "Error opening file....")
EndIf
FileSetPos($hFileOpen, 0, $FILE_BEGIN)
Local $sFileRead = FileReadLine ($hFileOpen,2)
MsgBox($MB_SYSTEMMODAL, "test", "Super, ma 2eme ligne est:" & @CRLF & $sFileRead)
Local $sFileRead = FileReadLine ($hFileOpen,-1)
FileClose($hFileOpen)
Merci!!!
Kreg
Avatar du membre
walkson
Modérateur
Modérateur
Messages : 1020
Enregistré le : ven. 12 août 2011 19:49
Localisation : Hurepoix
Status : Hors ligne

Re: Retourner valeur à partir d'une chaine dans un fichier  

#2

Message par walkson »

Bonjour,
IniRead() ou IniReadSection() devrait faire l'affaire. Regardez les exemples de l'aide.
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi
(Je ne compte que les heures heureuses)
Avatar du membre
TomAijerrie
Niveau 5
Niveau 5
Messages : 192
Enregistré le : lun. 02 juin 2014 09:55
Localisation : Lyon
Status : Hors ligne

Re: Retourner valeur à partir d'une chaine dans un fichier

#3

Message par TomAijerrie »

La premiere ligne d'un fichier est la ligne 1
Donc dans ton fichier, la ligne2 c'est "0=10"

Mais comme l'a fait remarquer walkson, il existe des fonction déjà faites et automatiquement intégrées pour lire les fichiers ini.
Si tu es sûr que la section s'apelle toujours Data et que c'est toujours ce qu'il y a apres le 1= qui t'intéresse, utilise
IniRead("test.ini","Data","1","")
Kreg
Niveau 1
Niveau 1
Messages : 11
Enregistré le : jeu. 06 juin 2013 10:00
Status : Hors ligne

Re: Retourner valeur à partir d'une chaine dans un fichier

#4

Message par Kreg »

Réponse tardive... Mais merci !
Je sais pas comment j'ai oublié cette fonction... tout simplement.

Merki :)
Répondre