[Ex] Lire un fichier

Partagez vos scripts, et vos applications AutoIt.
Règles du forum
.
Répondre
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

[Ex] Lire un fichier

#1

Message par ani »

On selectionne le fichier, quelque soit son extension.
Pour cela on utilise FileOpenDialog.

Code : Tout sélectionner

$Var = FileOpenDialog ("","c:","All (*.*)",1)
Ici j'ai utilisé consolewrite pour une sortie via autoit4scite .
si on retourne la valeur $var = on obtiendra comme sortie le lien du fichier.
si on retourne la fonction lire($var) = on obtiendra son contenu.

Code : Tout sélectionner

ConsoleWrite ( "#Source =" & $Var & @CRLF & "!Contenu du fichier" & @CRLF & lire( $Var ) )
pour ceux qui ne voudrait pas utiliser consolewrite , remplacer celle-ci par une message box (msgbox)

Code : Tout sélectionner

msgbox ( 0 , "" , "#Source =" & $Var & @CRLF & "!Contenu du fichier" & @CRLF & lire( $Var ) )
Et pour finir, la petite fonction, on aura utilisé, Fileread & Filegetzise et un return.

Code : Tout sélectionner

func Lire ( $Fichier )
Return FileRead ( $Fichier , FileGetSize ( $Fichier ) )
EndFunc

ce petit code peut servir de base.
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

#2

Message par ani »

et bien voici une seconde version , vu que je suis encore au stade débutant, merci pour la correction :)

lecture d'un fichier qui comporte des balise < >

Code : Tout sélectionner

Func lecture($Fichier,$debut,$fin)
$Lecture = FileRead($Fichier, FileGetSize($Fichier))
if string($fin) = "" Then
$Array = StringRegExp($Lecture, '<(?:' & $debut & ')>(.*?)</(?:' & $debut & ')>', 3)
Else
$Array = StringRegExp($Lecture, '<(?:' & $debut & ')>(.*?)</(?:' & $fin & ')>', 3)
EndIf
Return $Array
EndFunc

exemple = de <body> a </body>

lecture("pagehtmlxml_avec_balise<>",'body',"")

j'indiquerai des exemple et amelioration de la fonction :)
on peut faire aussi sans les balise la faudra faire case select 1 pour balise et deux pour sans ? vous en dite ?

j'ai indiqué string($fin) j'avais testé aussi stringlen j'obtiend le meme resultat quel est la difference ? stringlen j'ai capté qui compte les caractère et string mot.. merci pour l'info et correction :)
Répondre