📄 a1240.cpp
字号:
#include "A1240.H"
int main(void)
{
int iPublic;
iPublic = OpenFile();
if( iPublic == -1 )
{
Message("File Con't Opened,Please Cheack And Try Again");
return ERR_NoFile;
}
iPublic = RunTruns();
if( iPublic == -1 )
{
Message("Con't Truns The Data To Bill File");
return ERR_TrunFail;
}
Message("I Have Truns The Data To Bill Successed");
return 0;
}
void Message(char *Message)
{
printf("\n*------------------------Out Message -------------------------------------*\n");
printf("OutMessage: %s",Message);
printf("\n*-------------------------------------------------------------------------*\n");
}
int RunTruns(void)
{
int iRead,count,i;
char cFileName[20];
char DiskBuffer[LenBlock];
char buf1[10],buf2[20];
unsigned cnt1,cnt2,cnt3;
char cbuf1[10],cbuf2[10],cbuf3[10];
unsigned char *p;
strcpy(cFileName, DataPath);
strcat(cFileName, DataName);
inFile = open(cFileName,O_RDONLY | O_BINARY);
if(inFile == -1 )
return -1;
lseek(inFile,0l,SEEK_SET);
do
{
printf("..");
//fprintf(OutFile,"-----------------------\n");
iRead = ReadData(inFile,DiskBuffer);
// iRead = read(inFile,DiskBuffer,LenBlock);
if( iRead <= 0 )
{
break;
}
else
{
if (DiskBuffer[0] == 0x01)
{
p=DiskBuffer + 4;
for (count=0; count<3; count++)
{
if (*p==0xEE)
break;
memset(buf1,0,sizeof(buf1));
for (i=0; i<4; i++)
{
buf1[2*i]=getHigh(p[i]);
if (buf1[2*i]=='E')
{
buf1[2*i]=0;
break;
}
buf1[2*i+1]=getLow(p[i]);
if (buf1[2*i+1]=='E')
{
buf1[2*i+1]=0;
break;
}
}//for(i = 0; i< 4; i++)
p+=4;
for (i=0; i<100; i++)
{
buf2[1]=*p++;
buf2[0]=*p++;
cnt1=*(unsigned *)buf2;
buf2[1]=*p++;
buf2[0]=*p++;
cnt2=*(unsigned *)buf2;
buf2[1]=*p++;
buf2[0]=*p++;
cnt3=*(unsigned *)buf2;
sprintf(buf2,"%s%02d",buf1,i);
sprintf(cbuf1,"%8d",cnt3);
sprintf(cbuf2,"%8d",cnt2);
sprintf(cbuf3,"%8d",cnt1);
fprintf(OutFile,"%7s%8s%8s%8s%8s\n",buf2,cbuf1,cbuf2,cbuf3," ");
}//for(i = 0;i< 100; i++)
}//for(count i = 0; i < 3; i++ )
}// if(DiskBuffer[0] == 0x01)
}// if (iRead < 0 ) else {}
}while(1);
close(inFile);
fcloseall();
return 1;
}
int OpenFile(void)
{
char NameBuf[128];
strcpy(NameBuf, DataPath);
strcat(NameBuf, OutName);
OutFile = fopen(NameBuf,"a+");
if( OutFile == NULL )
{
Message("OutFile Not Opened");
return -1;
}
strcpy(NameBuf, DataPath);
strcat(NameBuf, ErrName);
ErrFile = fopen(NameBuf,"a+");
if( ErrFile == NULL )
{
Message("Error File Not Opened");
return -1;
}
return 0;
}
int ReadData(int finFile,unsigned char *p)
{
int iReadByte;
iReadByte = read(finFile,p,LenBlock);
if( iReadByte < 0 )
return -1;
return iReadByte;
}
int getHigh(int ch)
{
ch=(ch&0xF0)>>4;
ch+=(ch>9)?0x37:0x30;
return ch;
}
int getLow(int ch)
{
ch=ch&0x0F;
ch+=(ch>9)?0x37:0x30;
return ch;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -