Question
(Résolu) Convertir une String vers Int
- BARTHE
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 25
- Remerciements reçus 0
il y a 16 ans 7 mois #5098
par BARTHE
(Résolu) Convertir une String vers Int a été créé par BARTHE
Bonjour,
je cherche a calculer le total de plusieurs dossiers.
Pour cela je m'appuie sur cette fonction
[code:1]Function Dir-Size
{
Param([string]$directory)
$colItems=(Get-ChildItem $directory -recurse | Measure-Object -property length -sum)
\"{0:N2}\" -f ($colItems.sum / 1MB«»)
}
[/code:1]
Le problème et lorsque je l'utilise
[code:1]$test= Dir-Size -directory \"d:\\"[/code:1]
C'est une valeur de type string qui est renvoyée et non un nombre ..
j'ai bien essayé de mettre [int]$test
mais cela me renvoi
Impossible de convertir la valeur « 16 575,24 » en type « System.Int32 ». Erreur :
« Le format de la chaîne d'entrée est incorrect. »
Au niveau de ligne : 1 Caractère : 11
+ [int]$test <<<<
+ CategoryInfo : NonSpécifié : (
[], RuntimeException
+ FullyQualifiedErrorId : RuntimeException
Voila donc si quelqu'un peut m'indiquer l'erreur que j'ai fait.
Merci d'avance
Message édité par: cyril.barthe, à: 17/08/09 11:16<br><br>Message édité par: cyril.barthe, à: 26/08/09 21:28
je cherche a calculer le total de plusieurs dossiers.
Pour cela je m'appuie sur cette fonction
[code:1]Function Dir-Size
{
Param([string]$directory)
$colItems=(Get-ChildItem $directory -recurse | Measure-Object -property length -sum)
\"{0:N2}\" -f ($colItems.sum / 1MB«»)
}
[/code:1]
Le problème et lorsque je l'utilise
[code:1]$test= Dir-Size -directory \"d:\\"[/code:1]
C'est une valeur de type string qui est renvoyée et non un nombre ..
j'ai bien essayé de mettre [int]$test
mais cela me renvoi
Impossible de convertir la valeur « 16 575,24 » en type « System.Int32 ». Erreur :
« Le format de la chaîne d'entrée est incorrect. »
Au niveau de ligne : 1 Caractère : 11
+ [int]$test <<<<
+ CategoryInfo : NonSpécifié : (
+ FullyQualifiedErrorId : RuntimeException
Voila donc si quelqu'un peut m'indiquer l'erreur que j'ai fait.
Merci d'avance
Message édité par: cyril.barthe, à: 17/08/09 11:16<br><br>Message édité par: cyril.barthe, à: 26/08/09 21:28
Connexion ou Créer un compte pour participer à la conversation.
- PULVERAIL
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 36
- Remerciements reçus 0
il y a 16 ans 7 mois #5099
par PULVERAIL
Réponse de PULVERAIL sur le sujet Re:Convertir une String vers Int
Je viens de tester ton script...
Et je n'ai aucun message d'erreur qui s'affiche à l'écran...
Et je n'ai aucun message d'erreur qui s'affiche à l'écran...
Connexion ou Créer un compte pour participer à la conversation.
- BARTHE
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 25
- Remerciements reçus 0
il y a 16 ans 7 mois #5100
par BARTHE
Réponse de BARTHE sur le sujet Re:Convertir une String vers Int
Merci d'avoir essayé,
J'ai résolu le problème en changeant
[code:1]\"{0:N2}\" -f ($colItems.sum / 1MB«»)[/code:1]
par
[code:1][float]($colItems.sum / 1MB«»)[/code:1]
Grâce au super article ci dessous
powershell.com/cs/blogs/tobias/archive/2...ders-total-size.aspx
J'ai résolu le problème en changeant
[code:1]\"{0:N2}\" -f ($colItems.sum / 1MB«»)[/code:1]
par
[code:1][float]($colItems.sum / 1MB«»)[/code:1]
Grâce au super article ci dessous
powershell.com/cs/blogs/tobias/archive/2...ders-total-size.aspx
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 16 ans 7 mois #5109
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Convertir une String vers Int
Oui, c'est une solution.
Ta fonction se nomme Dir-Size mais tu ne précise pas qu'elle renvoi une taille en MB.
Tu peux déjà la renommer en Get-SizeFileDirectory.
A mon avis l'usage de MB et autre est plutôt dédié à l'affichage, dans ton cas on ne sait plus ce qu'on manipule, une valeur certes mais on ne connait plus son unité.
Si ensuite on souhaite changer d'unité ce n'est plus possible.
Ta fonction se nomme Dir-Size mais tu ne précise pas qu'elle renvoi une taille en MB.
Tu peux déjà la renommer en Get-SizeFileDirectory.
A mon avis l'usage de MB et autre est plutôt dédié à l'affichage, dans ton cas on ne sait plus ce qu'on manipule, une valeur certes mais on ne connait plus son unité.
Si ensuite on souhaite changer d'unité ce n'est plus possible.
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.046 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- (Résolu) Convertir une String vers Int