VB.Net Taille d'un fichier

Résolu
cs_MagDix Messages postés 532 Date d'inscription lundi 5 juin 2006 Statut Membre Dernière intervention 6 octobre 2012 - 25 nov. 2008 à 22:05
cs_MagDix Messages postés 532 Date d'inscription lundi 5 juin 2006 Statut Membre Dernière intervention 6 octobre 2012 - 26 nov. 2008 à 14:37
Salut à tous..


Je cherche un moyen pour connaitre la taille d'un fichier...


J'ai essayé avec la fonction Path... mais je ne trouve rien.. et la fonction IO et je ne trouve rien non plus...




Comment fait-on ???


merci de votre aide

4 réponses

cs_fauve Messages postés 661 Date d'inscription vendredi 2 décembre 2005 Statut Membre Dernière intervention 23 mars 2011 8
26 nov. 2008 à 11:20
Salut,

Voici une autre fonction plus performante que celle de PCPT qui permet d'afficher la taille du fichier en octets, Ko, Mo, Go et To.

 Sub Taille_fichier(ByVal Filename As String)
        ' Filename doit être de la forme suivante D:\test.txt
        Dim calcul As Integer
        Dim Fi As New IO.FileInfo(Filename)
        ' Déclaration et initialisation de la variable Fi

        If Fi.Length < 1024 Then
            ' Vrai si le fichier a une taille inférieure à 1 Ko
            MsgBox("La taille du fichier est de " + Fi.Length + " octets")
        End If

        If Fi.Length >= 1024 And Fi.Length < 1024 * Math.Pow(10, 3) Then
            ' Vrai si le fichier a une taille comprise entre 1 Ko et 999 Ko
            calcul = Math.Round((Fi.Length) / 1024, 2)
            ' calcul recoit la taille du fichier en Ko
            MsgBox("La taille du fichier est de " + calcul.ToString + " Ko")
        End If

        If Fi.Length >= 1024 * Math.Pow(10, 3) And Fi.Length < 1024 * Math.Pow(10, 6) Then
            ' Vrai si le fichier a une taille comprise entre 1 Mo et 999 Mo
            calcul = Math.Round((Fi.Length) / (1024 * Math.Pow(10, 3)), 2)
            'calcul recoit la taille du fichier en Mo
            MsgBox("La taille du fichier est de " + calcul.ToString + " Mo")
        End If

        If Fi.Length >= 1024 * Math.Pow(10, 6) And Fi.Length < 1024 * Math.Pow(10, 9) Then
            ' Vrai si le fichier a une taille comprise entre 1 Go et 999 Go
            calcul = Math.Round((Fi.Length) / (1024 * Math.Pow(10, 6)), 2)
            'calcul recoit la taille du fichier en Go
            MsgBox("La taille du fichier est de " + calcul.ToString + " Go")
        End If

        If Fi.Length >= 1024 * Math.Pow(10, 9) And Fi.Length < 1024 * Math.Pow(10, 12) Then
            ' Vrai si le fichier a une taille comprise entre 1 To et 999 To
            calcul = Math.Round((Fi.Length) / (1024 * Math.Pow(10, 9)), 2)
            'calcul recoit la taille du fichier en To
            MsgBox("La taille du fichier est de " + calcul.ToString + " To")
        End If

    End Sub

++

Fauve
Pensez : Réponse Acceptée 
3
PCPT Messages postés 13280 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 49
25 nov. 2008 à 22:44
salut,

c'était pas sur codyx donc j'ai posté, mais google arrive aussi à te répondre très rapidement



<hr />
'    OBTENIR LA TAILLE D'UN FICHIER EN OCTETS
'    http://www.codyx.org/snippet_obtenir-taille-fichier-octets_741.aspx#2203
'    Posté par [ 401740 PCPT ] le 25/11/2008
<hr />



    Function GetFileLength(ByVal sPathFile As String) As Long
        Dim sFile As New System.IO.FileInfo(sPathFile)
        Dim lRet As Long
        If sFile.Exists Then lRet = sFile.Length Else lRet = -1
        sFile = Nothing
        Return lRet
    End Function




'----------------------------------------------------------------



'Remarques :


'se teste avec
:
'MessageBox.Show(GetFileLength("c:\pagefile.sys").ToString)





++

<hr size ="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp 
0
PCPT Messages postés 13280 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 49
26 nov. 2008 à 12:22
salut,



[../auteur/FAUVE/636345.aspx fauve]

-> "plus performante" ?

tu utilises strictement le même code sans vérifier l'existance du fichier
le reste c'est de l'affichage.....
(loin d'être optimisé, d'ailleurs...)


Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp 
0
cs_MagDix Messages postés 532 Date d'inscription lundi 5 juin 2006 Statut Membre Dernière intervention 6 octobre 2012 1
26 nov. 2008 à 14:37
merci à vous deux
0