# c program for implementing system calls
================================================
#include
#include
#include
#include
void main()
{
int ch;
clrscr();
do
{
printf("\n\t\t\tMAIN MENU\n\t\t-------------------------\n");
printf("1.To Display List of Files\n");
printf("2.To Create New Directory\n");
printf("3.To Change the Working Directory\n");
printf("4.Exit\n");
printf("Enter the Number:");
scanf("%d",&ch);
switch(ch)
{
case 1:
list_file();
break;
case 2:
directory();
break;
case 3:
change_dir();
break;
case 4:
exit(0);
} }while(ch<=4);
}
int list_file()
{
int l;
char e[]="*.*";
clrscr();
printf("\t\tLIST FILE DETAIL\n\t--------------------------------------\n");
printf("1.List All Files\n2.List of Extention Files\n3.List of Name Wise\n");
scanf("%d",&l);
switch(l)
{
case 1:
printf("List of All(*.*) Files\n");
subfun(e);
break;
case 2:
printf("Enter the Extention:");
scanf("%s",&e);
subfun(e);
break;
case 3:
printf("Enter the Name wise(eg:moha*.*):");
scanf("%s",&e);
subfun(e);
break;
}
return 0;
}
int directory()
{
struct ffblk ffblk;
unsigned attrib;
int d;
char name[10],buffer[MAXPATH];
printf("Enter the Directory name:");
scanf("%s",&name);
getcwd(buffer,MAXPATH);
printf("Current directory:%s\n",buffer);
if(_dos_getfileattr(name,&attrib)==0)
{
printf("%s has already available",name);
return 0;
}
else
{
mkdir(name);
printf("%s Directory Successfully Created\n",name);
}
return 0;
}
int change_dir()
{
char buffer[MAXPATH];
int d,d1;
printf("\nCurrent Directory:%s\n",getcwd(buffer,MAXPATH));
printf("\t\tChange Directory\n\t\t-----------------\n");
printf("\n1.Step by Step Backward\n2.Goto Root Directory\n3.Forward Directory \nEnter the number:");
scanf("%d",&d);
switch(d)
{
case 1:
chdir("..");
break;
case 2:
chdir("\\");
break;
case 3:
printf("Please enter the Filename:");
scanf("%s",buffer);
chdir(buffer);
break;
}
printf("\nCurrent Directory:%s",getcwd(buffer,MAXPATH));
return 0;
}
int subfun(s)
char s[10];
{
struct ffblk ffblk;
int d,p=0,i=0;
d=findfirst(s,&ffblk,0);
while(!d)
{
printf("%s\n",ffblk.ff_name);
d=findnext(&ffblk);
i++;
p=p+1;
if(p>=22)
{
printf("Press any key to continue:\n");
getch();
p=0;
}
}
printf("\nTotal File:%d",i);
return 0;
}
============================================================
output:
================================================
#include
#include
#include
#include
void main()
{
int ch;
clrscr();
do
{
printf("\n\t\t\tMAIN MENU\n\t\t-------------------------\n");
printf("1.To Display List of Files\n");
printf("2.To Create New Directory\n");
printf("3.To Change the Working Directory\n");
printf("4.Exit\n");
printf("Enter the Number:");
scanf("%d",&ch);
switch(ch)
{
case 1:
list_file();
break;
case 2:
directory();
break;
case 3:
change_dir();
break;
case 4:
exit(0);
} }while(ch<=4);
}
int list_file()
{
int l;
char e[]="*.*";
clrscr();
printf("\t\tLIST FILE DETAIL\n\t--------------------------------------\n");
printf("1.List All Files\n2.List of Extention Files\n3.List of Name Wise\n");
scanf("%d",&l);
switch(l)
{
case 1:
printf("List of All(*.*) Files\n");
subfun(e);
break;
case 2:
printf("Enter the Extention:");
scanf("%s",&e);
subfun(e);
break;
case 3:
printf("Enter the Name wise(eg:moha*.*):");
scanf("%s",&e);
subfun(e);
break;
}
return 0;
}
int directory()
{
struct ffblk ffblk;
unsigned attrib;
int d;
char name[10],buffer[MAXPATH];
printf("Enter the Directory name:");
scanf("%s",&name);
getcwd(buffer,MAXPATH);
printf("Current directory:%s\n",buffer);
if(_dos_getfileattr(name,&attrib)==0)
{
printf("%s has already available",name);
return 0;
}
else
{
mkdir(name);
printf("%s Directory Successfully Created\n",name);
}
return 0;
}
int change_dir()
{
char buffer[MAXPATH];
int d,d1;
printf("\nCurrent Directory:%s\n",getcwd(buffer,MAXPATH));
printf("\t\tChange Directory\n\t\t-----------------\n");
printf("\n1.Step by Step Backward\n2.Goto Root Directory\n3.Forward Directory \nEnter the number:");
scanf("%d",&d);
switch(d)
{
case 1:
chdir("..");
break;
case 2:
chdir("\\");
break;
case 3:
printf("Please enter the Filename:");
scanf("%s",buffer);
chdir(buffer);
break;
}
printf("\nCurrent Directory:%s",getcwd(buffer,MAXPATH));
return 0;
}
int subfun(s)
char s[10];
{
struct ffblk ffblk;
int d,p=0,i=0;
d=findfirst(s,&ffblk,0);
while(!d)
{
printf("%s\n",ffblk.ff_name);
d=findnext(&ffblk);
i++;
p=p+1;
if(p>=22)
{
printf("Press any key to continue:\n");
getch();
p=0;
}
}
printf("\nTotal File:%d",i);
return 0;
}
============================================================
output:
No comments:
Post a Comment