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

📄 function1.cpp

📁 Borland c++编写
💻 CPP
📖 第 1 页 / 共 3 页
字号:
       "B213",          //清零次数;
       "B212",          //编程次数;
      } ;
    char * Getval = new char[100];
    char * Addr =new char[10];
    char * DataName=new char[6];
    char bc[9];
    //DBF_Bcs dbfitem;
    
    int cont,i;
    Addr[0]=0;
    DateName[0]=0;
    i=0;
    cont=0;
    Getval[0]=0;
    //数据库;
    fhandle=fopen("tpz.dbf","rb+");
    unsigned tmp;
    char fhead[12];
    fread(fhead,12,1,fhandle);
    fhdsize=fhead[8];
    frcsize=fhead[10];
    reccount=fhead[4];
     
   
    strcat(DataName, sdbc[0]);
    printf("%s","wait...");
    getch();
    for (i=0;i<9;)
     {
        for (cont=0;cont<3;)
        {
         if(ReadData(DataName,Getval,Addr)==0)
            {
               memcpy(&bc[i],Getval,strlen(Getval));
               DataName[0]=0;
               Getval[0]=0;
               }
           else
                {
	            cont++;
	                 }
            }//for cont 
            i++;    
            strcat(DataName, sdbc[i]);
  }//for i


     memcpy(dbfitem_Bcs.Number,&bc[0],8);
     memcpy(dbfitem_Bcs.SBH,&bc[1],12);
     memcpy(dbfitem_Bcs.BCS,&bc[2],4);
     memcpy(dbfitem_Bcs.RQZC,&bc[3],8);
     memcpy(dbfitem_Bcs.SJ,&bc[4],6);
     memcpy(dbfitem_Bcs.BCSJ,&bc[5],12);
     memcpy(dbfitem_Bcs.QLSJ,&bc[6],12);
     memcpy(dbfitem_Bcs.QLCS,&bc[7],4);
     memcpy(dbfitem_Bcs.BCCS,&bc[8],4);
     AppendRecord4(dbfitem_Bcs);
     printf("read meter data success\n");
     getch();
     delete [] DataName;
     delete [] Getval;
     delete [] Addr;
//   delete  [] TStr;
     dbfclose();
     return 0 ;
}
//----------------------------------------------------------------------------------------
int bh(void)
{
      clrscr();
      fhandle=fopen("TBH.dbf","r");
      unsigned tmp;
      char fhead[12];
      fread(fhead,12,1,fhandle);
      //long numofrec;
      fhdsize = * (unsigned *) &fhead[8];
      frcsize = * (unsigned *) &fhead[10];
      reccount = * (unsigned *)&fhead[4];
      fseek(fhandle,162L,0);
      dbfread(&dbfitem);
      dbf2c(dbfitem,readitem);
      dbfclose();
      
      
      
      
      char *bh=new char[8];
      char *Addr=new char[8];
      char *writeName=new char[3];
      
      writeName[0]=0;
      time[0]=0;
      cost[0]=0;
      Addr[0]=0;
      
      strcat(writeName, "C032");      
      strcat(cost, "01");
      strcat(Addr, "99999999");
      clrscr();
      getch();
     if ( writedata(writeName,Mc,Addr))
      {
	      //	clrscr();
       //	printf ("%s","success");
		getch();
	   //  break;
	}
     delete []writeName;
     delete []time;
     delete []cost;
     delete []Addr;
} 
//----------------------------------------------------------------------------------------
/*int readxl () //读需量;
{
    clrscr();
    #ifdef DEBUG
    fhandle=fopen("Txl.dbf","rb+");
    #else
    fhandle=fopen("d:\\QDtable.dbf","rb+");
    #endif
    unsigned tmp;
    char fhead[12];
    fread(fhead,12,1,fhandle);
    fhdsize=fhead[8];
    frcsize=fhead[10];
    reccount=fhead[4];
    
    char * DataName=new char[6];
    char * Getval = new char[6000];
    char * Addr =new char[10];
    
    //int daynum;
   // char xtdate[2];
   int year,leap,month,day,leap_month,leap_day;
    struct xlk start;
    struct xlk last;
    start=last=NULL;
    //取系统时间;
    struct date d;
    getdate(&d);

    xtdate[0]= d.da_year;
    xtdate[1]= d.da_mon;
    xtdate[2]= d.da_day;
    year=d.da_year;
    month=d.da_mon;
    day=d.da_day;    
    Getval[0]=0;
    DataName[0]=0;
    Addr[0]=0;
    //char * tr=new char [10];
    //判断闰年;
    if ((year%4==0&&year%100!=0)||(year%400==0)) leap=1;
    else leap=0;
    strcat(DataName, "A070");
    strcat(Addr,"99999999");
    printf("%s","wait...");
    getch();
                 
if (ReadData(DataName,Getval,Addr)==0)
 {
     char *xStr=Getval;
     int i;
    if (leap=0)
    {
     if (month=5 or month=7 or month=10 or month =12) leap_month=0;
      else 
       {if (month=6 or month=11) leap_month=1;
            else 
              {if (month=1 or month=8) leap_month=2;
                    else 
                      {if (month=2 or month=9) leap_month=3;
                          else 
                            {if (month=3) leap_month=4;
                                 else leap_month=5;
                            }
                      }
              }
       }                     
    switch (leap_month)
    { case 0:
      case 1:
      case 2:
      case 3:
      case 4:
      case 5:
          
        
        
        
        if (day>30) 
         {
          month=month-1;
          day=60-day;
          if (time<24)
          {
           if (minit<30)
           memcpy(dbfitem_Txl.Meterno,Addr,8); //&Addr[3]
           strcat(xtdate,year);
           strcat(xtdate,month);
           strcat(xtdate,day);
           memcpy(dbfitem_Txl.x1,*xStr,6);
           info->next;
           else
           memcpy(dbfitem_Txl.Meterno,Addr,8); //&Addr[3]
           strcat(xtdate,year);
           strcat(xtdate,month);
           strcat(xtdate,day);
           memcpy(dbfitem_Txl.x2,*xStr,6);      
          AppendRecord(dbfitem);
         } //for
     getch();
     int k=1;
     while(strlen(Getval)!=0)
     {
       memcpy(tr,Getval,10);
       tr[10]=0;
       printf("%d:%s\n",k,tr);
       getch();
       Getval+=10;
       k++;
     }
  }
   else
   {
     printf("%s","read meter data error\n");
     getch();
   }
  delete [] DataName;
  delete [] Getval;
  delete [] Addr;
  delete [] tr;
  dbfclose();
  return (0);
}*/
//--------------------------------------------------------------------
int readxl6()//读6个月需量;
{
    char * Getval = new char[100];
    char * Addr =new char[10];
    char * DataName=new char[6];
    char xl6[86];
   // char ym[7];
   // char hm[3];
    //char w[1];
    char cbsj[4];
    int cont,i;
    Addr[0]=0;
    DateName[0]=0;
    i=0;
    cont=0;
    Getval[0]=0;
    cbsj[0]=0;
    //数据库;
    fhandle=fopen("tpz.dbf","rb+");
    unsigned tmp;
    char fhead[12];
    fread(fhead,12,1,fhandle);
    fhdsize=fhead[8];
    frcsize=fhead[10];
    reccount=fhead[4];
     //取系统时间;
    struct date d; 
    getdate(&d); 
   strcat(cbsj[4],d.da_year,2);
   strcat(cbsj[4],d.da_mon,2);   
     
    strcat(DataName,"A410" );
    printf("%s","wait...");
    getch();
   
for (i=0;i<7;i++)
 {
   for (cont=0;cont<3;)
    {
         if(ReadData(DataName,Getval,Addr)==0)
          {
           char *xl6=Getval;
         
           memcpy(dbfitem_TLx.BH,&Addr,8);              
           memcpy(dbfitem_TLx.xl,&xl6[i*7*2],6);    
           memcpy(dbfitem_TLx.rs,&xl6[i*14+6],8);             
           memcpy(dbfitem_TLx.cbsj,cbsj,4);
           AppendRecord7(dbfitem_TLx);     
           break;
          }
        else  cont++;
        
       
    }// for
 }//for             
                 
     delete [] DataName;
     delete [] Getval;
     delete [] Addr;
//   delete  [] TStr;
     dbfclose();
     return 0 ;
     }
//---------------------------------------------------------------------
int readdn6()//读6个电能;
{	
    char * Getval = new char[100];
    char * Addr =new char[10];
    char * DataName=new char[6];
    char dn6[86];
   // char ym[7];
   // char hm[3];
    //char w[1];
    char cbsj[6],qsmon[2],qsye[4];
    int cont,year,month,num,month1,n;//cont读数据次数;year年数;month字符转换月数;num最后月;month1月转换字符;n循环次数;
    qsye[0]=0;
    Addr[0]=0;
    DateName[0]=0;
    cbsj[0]=0;
    qsmon[0]=0;
    cont=0;
    Getval[0]=0;
    //数据库;
    fhandle=fopen("Tld.dbf","rb+");
    unsigned tmp;
    char fhead[12];
    fread(fhead,12,1,fhandle);
    fhdsize=fhead[8];
    frcsize=fhead[10];
    reccount=fhead[4];
    
     //取系统时间;
    struct date d; 
    getdate(&d); 
    memcpy(cbsj[6],d.da_year,4);
    strcpy(cbsj[6],d.da_mon,2);       
    strcpy(DataName,"9410" );
    printf("%s","wait...");
    getch();
if(ReadData(DataName,Getval,Addr)==0)
 {
  printf("success");	
  char *dn6=Getval;
  month=(cbsj[5]-48)*10+(cbsj[6]-48);
  year=(cbsj[0]-48)*1000+(cbsj[1]-48)*100+(cbsj[3]-48)*10 + (cbsj[4]-48);
  *dn6+=48;
  num=(dn6[0]-48)*10)+(dn6[1]-48);
     
 if (month>6 and num==6)
   {           
    n=num;    
    for (n=6;n>0;n--)
      	{
       	 *dn6-=8;              	 
         memcpy(dbfitem_TLd.BH,&Addr,8);              
         memcpy(dbfitem_TLd.xl,&xl6[0],8);                
         //memcpy(dbfitem_TLd.cbsj,cbsj[6],6);              
         month1=month-6;
         memcpy(qsmon[1],month1/10+48,1);
         strcat(qsmon[1],month1%10+48,1);
         memcpy(dbfitem_TLd.sj,d.da_year,4);
         memcpy(dbfitem_TLd.sj,qsmon[1],2);
         //strcat(dbfitem_TLd.sj,qsmon[1],1);
         AppendRecord6(dbfitem_TLx);         
        
        }//for num
   }//endif month>6 and num=6
 if (month>6 and num<6)
 {
  *dn6-=num*8
  n=num+1;
  
  for(;n<=6;n++)
  {
   *dn6-=8;
   memcpy(qsmon[1],month1/10+48,1);
   strcat(qsmon[1],month1%10+48,1);
   memcpy(dbfitem_TLd.BH,&Addr,8);              
   memcpy(dbfitem_TLd.xl,&xl6[0],8);                              
 //  month1=month-num;   
   memcpy(dbfitem_TLd.sj,d.da_year,4);
   strcat(dbfitem_TLd.sj,qsmon[1],2);
   AppendRecord6(dbfitem_TLx);	
   if (n=6)  
   {*dn6+=48;    
    n=0;}
    month1++;
   if (n=num) break;
  }
 }//endif month>6 and num<6  
  
 if ( month<6 and num=6)
 {      
   year=year-1;
   month1=month+6; 
   memcpy(qsye[4],(year/1000+48),1);
   strcat(qsye[4],(year%1000/100+48),1);
   strcat(qsye[4],(year%1000%100/10+48),1);
   strcat(qsye[4],(year/1000%100%10+48),1);
   for(num=6;num>0;num--)
   {
    *dn6-=8;         
    memcpy(dbfitem_TLd.BH,&Addr,8);              
    memcpy(dbfitem_TLd.xl,&xl6[0],8);                                      
    
    memcpy(qsmon[1],month1/10+48,1);
    strcat(qsmon[1],month1%10+48,1);       
    //strcpy(dbfitem_TLd.sj,qsmon[0],1);
    //strcpy(dbfitem_TLd.sj,qsmon[1],1);
    memcpy(dbfitem_Tld.sj,qsye[4],4);
    strcat(dbfitem_Tld.sj,qsmon[1],2);
    month1++;
    if {month1>12) 
    {
     month1=1;
     memcpy(dbfitem_TLd.sj,d.da_year,4);
     strcat(dbfitem_Tld.sj,qsmon[1],2);
    }
    else
    {
    memcpy(dbfitem_TLd.sj,qsye[4],4);
    strcat(dbfitem_TLd.sj,qsmon[1],2);
    }
    month1++;
    AppendRecord6(dbfitem_TLx);
   }// endfor
 }//endif month<6 and num=6
   
 if (month<6 and num<6)
 {  
   int i;
   *dn6-=num*8
   year=year-1;
   month1=month+6; 
        
   n=num+1;
  for(;n<=6;n++)
  {
   *dn6-=8;
   memcpy(qsye[4],(year/1000+48),1);
   strcat(qsye[4],(year%1000/100+48),1);
   strcat(qsye[4],(year%1000%100/10+48),1);
   strcat(qsye[4],(year/1000%100%10+48),1);        
   memcpy(dbfitem_TLd.BH,&Addr,8);              
   memcpy(dbfitem_TLd.xl,&xl6[0],8);                              
   
   memcpy(qsmon[1],month1/10+48,1);
   strcat(qsmon[1],month1%10+48,1);   
   memcpy(dbfitem_Tld.sj,qsye[4],4)
   strcat(dbfitem_TLd.sj,qsmon[1],2);   
   AppendRecord6(dbfitem_TLx);
   if (n=6) 
    { n=0;
      *dn6+=48;    
    }
    month1++;
    if(month1>12)
     {month1=1;
      year=year+1;
     }   
   if (n=num) break;
 }//for month<6 and num<6
  
 }//for           
                 
     delete [] DataName;
     delete [] Getval;
     delete [] Addr;
//   delete  [] TStr;
     dbfclose();
     return 0 ;
 }

⌨️ 快捷键说明

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