13,825
社区成员
发帖
与我相关
我的任务
分享
FILE *INFile;
char Temp[97] ;
AnsiString Temp1;
INFile = fopen("REG_N_SMOPACDL.BIN","r");
if(INFile !=NULL)
{
fseek(INFile, 0, SEEK_SET);
while(!feof(INFile))
{
fgets(Temp,98,INFile);
Temp1 = AnsiString(Temp);
memset(&aa, 0,sizeof(aa));
/*
sprintf(aa.C_ZONE,"%s",(Temp1.SubString(1,4)).c_str() );
sprintf(aa.N_SEQ,"%s",(Temp1.SubString(6,16)).c_str() );
sprintf(aa.C_ZONENO,"%s",(Temp1.SubString(23,4)).c_str() );
sprintf(aa.C_BRNO,"%s",(Temp1.SubString(29,4)).c_str() );
sprintf(aa.N_TELLER_NO,"%s",(Temp1.SubString(34,4)).c_str() );
sprintf(aa.C_ACCNO,"%s",(Temp1.SubString(38,18)).c_str() );
sprintf(aa.N_CURRTYPE,"%s",(Temp1.SubString(58,2)).c_str() );
sprintf(aa.N_OPACC_AMT,"%s",(Temp1.SubString(1,4)).c_str() );
sprintf(aa.D_WORK_DATE,"%s",(Temp1.SubString(1,4)).c_str() );
sprintf(aa.N_SCN,"%s",(Temp1.SubString(1,4)).c_str() );
sprintf(aa.D_DATA_DATE,"%s",(Temp1.SubString(1,4)).c_str() );
sprintf(aa.rev,"%s",(Temp1.SubString(1,4)).c_str() );
*///这段具体每个成员截取多少字符串,你自己确定,我没有弄,数值是乱写的。
}
}
fclose(INFile);
你这样试试,读出来数据,再处理吧,sprintf(aa.s1,"%s","1111");
sprintf(aa.s2,"%s","2222");
sprintf(aa.s3,"%s","123123123123123123");
//ShowMessage(aa.s1);
DWORD dwBytesWritten;
HANDLE hFile = CreateFile("c:\\1.dat",GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
if(hFile!=INVALID_HANDLE_VALUE)
{
WriteFile(hFile, &aa, sizeof(aa), &dwBytesWritten, NULL);
}
CloseHandle(hFile);
memset(&aa, 0,sizeof(aa));
hFile=CreateFile("c:\\1.dat",GENERIC_READ,NULL,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if(hFile!=INVALID_HANDLE_VALUE)
{
ReadFile(hFile,&aa,sizeof(aa),&dwBytesWritten, NULL);
}
CloseHandle(hFile);
ShowMessage(aa.s3);