Page 1 sur 1
[R] Connaitre le nombre de ligne dans un fichier texte
Posté : dim. 11 déc. 2011 12:01
par silvere
Bonjour,
Voila, je suis a la recherche d'une fonction qui retournerai le nombre de ligne dans un fichier texte.
Merci d'avance
Silvère
Re: [..] Connaitre le nombre de ligne dans un fichier texte
Posté : dim. 11 déc. 2011 12:48
par Lewi
Bonjour, tout simplement :
► Afficher le texte
Code : Tout sélectionner
$fichier = "toto.txt"
$count = _FileCountLines($fichier)
MsgBox(64,"",$count)
Func _FileCountLines($sFilePath)
Local $N = FileGetSize($sFilePath) - 1
;~ If @error Or $N = -1 Then Return 0
;~ Return StringLen(StringAddCR(FileRead($sFilePath, $N))) - $N + 1
Local $hFile, $sFileContent, $aTmp
$hFile = FileOpen($sFilePath, 0)
If $hFile = -1 Then Return SetError(1, 0, 0)
$sFileContent = StringStripWS(FileRead($hFile), 2)
FileClose($hFile)
If StringInStr($sFileContent, @CR) Then
$aTmp = StringSplit(StringStripCR($sFileContent), @LF)
ElseIf StringInStr($sFileContent, @CR) Then
$aTmp = StringSplit($sFileContent, @CR)
ElseIf Not $sFileContent = "" Then
$aTmp=StringLen(StringAddCR(FileRead($sFilePath, $N))) - $N + 1
Else
Return SetError(2, 0, 0)
EndIf
If IsArray($aTmp) Then
Return $aTmp[0]
Else
Return $aTmp
EndIf
EndFunc ;==>_FileCountLines
Re: [..] Connaitre le nombre de ligne dans un fichier texte
Posté : dim. 11 déc. 2011 13:02
par silvere
Merci !
Re: [R] Connaitre le nombre de ligne dans un fichier texte
Posté : dim. 11 déc. 2011 13:33
par jchd
@Lewi,
Il aurait mieux valu proposer :
Ne pas extraire des fonctions d'UDF standard pour les proposer en ligne. Car si l'usager a besoin de l'UDF dont la fonction est extraite, cela provoquera une erreur. Donc selon son niveau de compréhension et d'expérience, soit il supprimera la fonction en ligne (ce qui revient à la formule que je propose ci-dessus), soit il en changera le nom et aura une fonction en double pour rien.
Re: [R] Connaitre le nombre de ligne dans un fichier texte
Posté : dim. 11 déc. 2011 14:13
par silvere
Oui mais cette fonction ne compte pas les ligne qui ne possédé pas de caractère
Re: [R] Connaitre le nombre de ligne dans un fichier texte
Posté : dim. 11 déc. 2011 15:22
par jchd
Pardon ?
Même si c'était vrai ( ce qui n'est pas le cas) rien ne justifie de surcharger une fonction standard.