C语言写的程序如何读取出D盘剩余空间大小
展开全部
如果你的编译器有 statfs() 函数,有 unsigned long long 型,可以 用 statfs() 函数 获取。
--------
可以 调用 DOS 命令 system ( "DIR D:\ \ > a.dat");
把屏幕显示 转存 tmp.dat 文件。
再用程序 FILE *fp; fp=fopen("tmp.dat","r"); 打开文件。
读到文件的最后1行,例如:
38 Dir(s) 30,631,530,496 bytes free
取出第三个字符串 30,631,530,496 就是字节数。
============================
完整程序:
#include<stdio.h>
main()
{
char str[200],v[30];
FILE *fp;
system("dir D:\\ > tmp.dat");
fp=fopen("tmp.dat","r");
while(1){
if (fgets(&str[0],200,fp)==NULL) break;
sscanf(&str[0],"%*s %*s %s",v);
}
fclose(fp);
printf("free size: %s bytes\n",v);
}
--------
可以 调用 DOS 命令 system ( "DIR D:\ \ > a.dat");
把屏幕显示 转存 tmp.dat 文件。
再用程序 FILE *fp; fp=fopen("tmp.dat","r"); 打开文件。
读到文件的最后1行,例如:
38 Dir(s) 30,631,530,496 bytes free
取出第三个字符串 30,631,530,496 就是字节数。
============================
完整程序:
#include<stdio.h>
main()
{
char str[200],v[30];
FILE *fp;
system("dir D:\\ > tmp.dat");
fp=fopen("tmp.dat","r");
while(1){
if (fgets(&str[0],200,fp)==NULL) break;
sscanf(&str[0],"%*s %*s %s",v);
}
fclose(fp);
printf("free size: %s bytes\n",v);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询