Bonjour, existe il une commande pour obtenir le poid d'un fichier ou dossier ?
Bonjour, existe il une commande pour obtenir le poid d'un fichier ou dossier ?
Tu prends ton fichier, tu le met dans le creux de ta main, et tu estime à la volée combien de gramme il fait
Nan sérieusement, qu'est ce que tu appelles poid d'un fichier, la taille ?
Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.
ben oui la taille quoi, en octet bien sur
et si possible convertir les octer en KO MO et GO et eventuellement TO
L'objet File de FileSystemObject permet d'obtenir ce genre d'info. La propriété Size correspond à la taille du fichier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFile = objFSO.GetFile("c:\windows\system32\scrrun.dll") Wscript.Echo "Date created: " & objFile.DateCreated Wscript.Echo "Date last accessed: " & objFile.DateLastAccessed Wscript.Echo "Date last modified: " & objFile.DateLastModified Wscript.Echo "Drive: " & objFile.Drive Wscript.Echo "Name: " & objFile.Name Wscript.Echo "Parent folder: " & objFile.ParentFolder Wscript.Echo "Path: " & objFile.Path Wscript.Echo "Short name: " & objFile.ShortName Wscript.Echo "Short path: " & objFile.ShortPath Wscript.Echo "Size: " & objFile.Size Wscript.Echo "Type: " & objFile.Type
Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.
j'ai trouver ce script pour le poid d'un répertoire mais il ne pése pâs en octet:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 Dim RepTot Const MY_DOCUMENTS = "C:\Documents and Settings\Kookatix\Bureau\Nouveau dossier" Set objFSO = CreateObject("Scripting.FileSystemObject") Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.Namespace(MY_DOCUMENTS) Set objFolderItem = objFolder.Self strPath = objFolderItem.Path Set objFolder = objFSO.GetFolder(strPath) If objFolder.Size<1024^2 Then RepTot=FormatNumber(objFolder.Size/1024,0)&" KB" ElseIf objFolder.Size<10240^2 Then RepTot=FormatNumber(objFolder.Size/(1024^2),2)&" MB" Else RepTot=FormatNumber(objFolder.Size/(1024^2),0)&" MB" End If Wscript.Echo RepTot
mereci beaucoup c'est parfait, et plus simple que le code que j'ai trouver
maitenant pourai tu m'aider a convertir en KO puis MO puis GO puis enfin TO ?
bah les conversion se font en divisant le résultat obtenu par 1024 :
EDIT :1 GO = 1024 MO,
1 MO = 1024 KO,
1 KO = 1024 Octets,
1 Octet = 8 bits.
1 Byte = 1 Octet : Byte terme anglais pour Octet.
Si je commence à confondre les multiplications et les divisions cela ne va plus aller
Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.
j'ai fait ca et ce ne marche pas:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFile = objFSO.GetFolder("c:\windows\system32") 'Wscript.Echo "Taille du fichier: " & objFile.Size & "Octet(s)" vrPoid = objFile.Size vrPoid = objFile.Size / 1024 msgbox vrPoid
Chez moi cela marche !
Essaye avec un autre repertoire que System32, c peux être un problème de droit d'accès au propriétés de ce répertoire.
Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.
je sais pas en fait si c'est bon:
qu'en pensse tu ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFile = objFSO.GetFolder("c:\windows\system32") 'Wscript.Echo "Taille du fichier: " & objFile.Size & "Octet(s)" vrPoid = objFile.Size vrPoidKO = vrPoid / 1024 vrPoidMO = vrPoidKO / 1024 vrPoidGO = vrPoidMO / 1024 'vrPoidTO = vrPoidGO / 1024 msgbox vrPoid & " Octet(s)" & vbCrLf & vrPoidKO & " KO" & vbCrLf & vrPoidMO & " MO" & vbCrLf & vrPoidGO & " GO"
ben je croi que ca marche en fait, mais ca laisse beaucoup de chiffre derière la virgule, toi aussi ?
merci encore pour ton aide
oui c normal.
Après c'est une question d'affichage, il faut voir avec les propriétés des msgboxes pour savoir ce qu'elle propose.
Je crois que je t'avais passé un lien les regroupants.
Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager