Espace disque? (utilisé/gratuit/total) comment l'obtenir? en C++ ... merci juste pour la lecture.Espace disque? (utilisé/gratuit/total) comment l'obtenir? en C++
Répondre
GetDiskFreeSpaceEx API win32
Plus d'aide voir à: http://www.codeproject.com/KB/system/system_information.aspx – lsalamon
statvfs pour linux.
#include <sys/statvfs.h>
#include <iostream>
#include <cstring>
using namespace std;
int main(int argc, char *argv[])
{
struct statvfs fiData;
if(argc < 2) {
cout <<"Usage, ./size dir1 dir2 ... dirN\n";
return(1);
}
//Lets loopyloop through the argvs
for(int i= 1 ; i<argc; i++) {
if((statvfs(argv[i],&fiData)) < 0) {
cout << "\nFailed to stat:" << argv[i];
} else {
cout << "\nDisk: " << argv[i];
cout << "\nBlock size: "<< fiData.f_bsize;
cout << "\nTotal no blocks: "<< fiData.f_blocks;
cout << "\nFree blocks: "<< fiData.f_bfree;
}
}
}
Compilation: g ++ -o taille file.cpp
test: ./size Dir1 Dir2
Utilisez 'fiData.f_bavail' à la place de' fiData.f_bfree' pour le nombre de blocs libres disponibles pour le processus non-privilégié. Cela aidera à calculer le disque libre plus précis disponible. –
L'original Linux statfs() et fstatfs Les appels système() n'ont pas été conçus pour des tailles de fichier extrêmement importantes. Par la suite, Linux 2.6 a ajouté de nouveaux appels système statfs64() et fstatfs64() qui utilisent une nouvelle structure, statfs64. La nouvelle structure contient les mêmes champs que la structure statfs d'origine, mais les tailles des différents champs sont augmentées pour accueillir des fichiers de grande taille. voir http://linux.die.net/man/2/statfs64
- 1. iPhone: espace disque disponible
- 2. SQL Server 2005: espace disque pris par les colonnes supprimées
- 3. Taille du disque en Java 5
- 4. L'étiquette d'une partition de disque dur est-elle en majuscules ou en minuscules? (C: \ ou c: \)
- 5. Comment référencer un espace de noms C++ externe à partir d'un espace de noms imbriqué?
- 6. Comment accéder et sauvegarder les ressources incorporées sur le disque local en C#?
- 7. Comment redimensionner une image en C# sur une certaine taille de disque dur?
- 8. Comment réserver de l'espace disque dans un script MS SQL?
- 9. Enregistrement sur disque d'une base de données en mémoire
- 10. arrêter un disque dur
- 11. Comment donner un alias à un espace de noms en C#
- 12. Espace multiplate-forme restant sur le volume en utilisant python
- 13. Comment supprimer un espace vide?
- 14. Obtenir l'utilisation actuelle du processeur, de la RAM et du lecteur de disque en C#
- 15. Formater le disque et créer une partition en C sur LynxOS
- 16. logiciel n'écrire C: avec Win2003 utilisateur limité « d'espace disque »
- 17. Utilisation du disque SQLite
- 18. Comment obtenir le numéro de série du disque dur
- 19. Comment détecter si un lecteur spécifique est un disque dur?
- 20. Vue d'ensemble rpg espace en mosaïque
- 21. Comment connaître le format d'un certain disque (FAT32 ou NTFS)
- 22. Comment créer un nouveau projet XCode à partir d'un espace de code c/C++ existant
- 23. Activité de disque dans Applescript
- 24. Comment faire pour remplir DockPanel espace disponible
- 25. Puis-je créer un disque virtuel en mémoire par programmation?
- 26. Tri des erreurs d'E/S du disque en Python
- 27. Comment utiliser C# pour obtenir le numéro de série du disque dur?
- 28. Comment puis-je copier un élément à partir de références au disque? (C#)
- 29. Ecriture XML en mémoire au lieu du disque
- 30. Comment puis-je détecter l'insertion d'un disque amovible à l'aide de C#?
Il est spécifique à l'O/S. – ChrisW