⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 filemng.c

📁 该程序实现的是一个在织布厂用的提花机程序
💻 C
字号:
#include <dir.h>
#include "wea_dos.h"

BOOL FileList(char* path,char* ext,struct stringlist * fp)
{
   struct ffblk ffblk; 
   int done,i,n;
   char ex[5];
   if(ext[0]=='w')
	   strcpy(ex,"*.wea");
   else
 	   strcpy(ex,"*.job");
  if(chdir(path)!=0)
  {
	  fp->number=-1;
	   return 0;
  }
   for(i=0;i<500;i++)
		fp->filenames[i]='\0';
   done = findfirst(ex,&ffblk,0); 
   i=0;
   while (!done && i<500-1) 
   { 
		n=strlen(fp->filenames);
		fp->fn[i]=n;
		strcat(fp->filenames, ffblk.ff_name); 
		i++;		
		done = findnext(&ffblk); 
   } 
   fp->number=i;
   n=strlen(fp->filenames);
   fp->fn[i]=n;
   return 1;

}
BOOL FileSel(struct stringlist* fl,char* filename,int index)
{
	int i,j,n;
	char info[50];
	n=fl->number;
	if(n==0)
		return 0;
	n=fl->fn[index+1];
	i=fl->fn[index];
	for(j=0;j<n-i;j++)
		filename[j]=fl->filenames[j+i];
	filename[j]='\0';
	return 1;

}
BOOL FileCopy(char* filename,char* pathS,char* pathD,char* info)
{
   struct ffblk ffblk; 
   int done,i,n;
   char c;
   char command[100];
   char pathDD[16];
   if(chdir(pathS)!=0)
   {
	   sprintf(info,"Source path : %s not present",pathS);
	   return 0;
   }
   done=findfirst(filename,&ffblk,0);
   if(done!=0)
   {
	   sprintf(info,"Source file : %s not present",filename);
	   return 0;
   }
   if(chdir(pathD)!=0)
   {
	   sprintf(info,"Destnation path : %s not present",pathD);
	   return 0;
   }
   if(findfirst(filename,&ffblk,0)==0) 
   { 
	   sprintf(info,"Overwrite the file with the same name %s ? (Y/N)",filename);
	   DisplayInfo(info);
	   c=getch();
	   if(c!='Y' && c!='y')
	        return 0;
   }
   strcpy(pathDD,pathD);
   if(pathDD[0]=='D')
	   pathDD[11]='\0';
   sprintf(command,"copy %s%s %s",pathS,filename,pathDD);
   n=system(command);
   sprintf(info,"File: %s copied from %s to %s",filename,pathS,pathDD);
	return 1;
}

BOOL FileMove(char* filename,char* pathS,char* pathD,char* info)
{
   if(FileCopy(filename,pathS,pathD,info))
	  if(FileDelete(filename,pathS,info))
	  {
		  sprintf(info,"File: %s moved from %s to %s",filename,pathS,pathD);
		  return 1;
	  }
   return 0;
}
BOOL FileDelete(char* filename,char* pathS,char* info)
{
   struct ffblk ffblk; 
   int done,i,n;
   char c;
   char command[100];
   if(chdir(pathS)!=0)
   {
	   sprintf(info,"Source path : %s not present",pathS);
	   return 0;
   }
   done=findfirst(filename,&ffblk,0);
   if(done!=0)
   {
	   sprintf(info,"Source file : %s not present",filename);
	   return 0;
   }
   sprintf(command,"del %s%s",pathS,filename);
   system(command);
   sprintf(info,"File: %s deleted from %s",filename,pathS);
   return 1;
}
BOOL FileRename(char* oldname,char* newname,char* pathS,char* info)
{
   struct ffblk ffblk; 
   int done,i,n;
   char c;
   char command[100];
   if(chdir(pathS)!=0)
   {
	   sprintf(info,"Source path : %s not present",pathS);
	   return 0;
   }
   done=findfirst(oldname,&ffblk,0);
   if(done!=0)
   {
	   sprintf(info,"Source file : %s not present",oldname);
	   return 0;
   }
   sprintf(command,"ren %s %s",oldname,newname);
   system(command);
   sprintf(info,"File: %s renamed  to %s",oldname,newname);
   return 1;
}
/*
void SelFile(char* fn,char* ext)
{
   struct ffblk ffblk; 
   int done; 
   printf("Directory listing of *.*\n"); 
   done = findfirst("d:\\ccjb\\wea\\*.wea",&ffblk,0); 
   while (!done) 
   { 
      printf("  %s\n", ffblk.ff_name); 
      done = findnext(&ffblk); 
   } 

   return ; 

	DIR* d=opendir("d:\\ccjb\\wea");
	struct dirent* de;
        d=d;
	while(de=readdir(d))
		puts(de->d_name);
	closedir(d);

     struct ffblk f;
     int done = findfirst("*.exe", &f, FA_HIDDEN | FA_SYSTEM);
     while (!done)
     {
       printf("%10u %2u:%02u:%02u %2u/%02u/%4u %s\n",
         f.ff_fsize,
         (f.ff_ftime >> 11) & 0x1f,
         (f.ff_ftime >>  5) & 0x3f,
         (f.ff_ftime & 0x1f) * 2,
         (f.ff_fdate >>  5) & 0x0f,
         (f.ff_fdate & 0x1f),
         ((f.ff_fdate >> 9) & 0x7f) + 1980,
         f.ff_name);
       done = findnext(&f);
     }
}
*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -