MFC提取TXT里的文件(16进制)然后对文件中每一行第700个字符进行提取并且转换成10进制,然后存入一个新的TXT文件。。C++语言的我会编写,MFC不会
void dianliu()
{
int j,i,a,b;
int k=0,l=0;
char s;
string num1[6010];
double num;
ifstream f2; //从去空数据中读取数据
f2.open("1+.txt");
while(!f2.eof())
{
char c[6812];
f2.getline(c,6812);
f[l]=c;
l++;
}
for(a=0;a<1502;a++) //调整功出电流顺序
{
for(b=478;b>474;b--)
num1[a]+=f[a][b];
}
cout<<"功用电流已经提取"<<endl;
system("pause");
for(a=0;a<1502;a++)
{
for(b=0;b<4;b=b+2)
{
s=num1[a][b];
num1[a][b]=num1[a][b+1];
num1[a][b+1]=s;
}
}
cout<<"功用电流顺序已经更改"<<endl;
/*ofstream f4("功出电流.txt",ios::app); //将功用电流写入新的txt
if(!f4)
{
cout<<"文件打开失败";
}
for(i=0;i<1502;i++)
f4<<num1[i]<<endl;
f4.close();
cout<<endl<<"功出电流写入完毕"<<endl;
system("pause");*/
for(i=0;i<1502;i++) //16进制转10进制
{
double num=0;
double six=1;
for(a=2;a>=0;a--)
{
six=six*16;
if(num1[i][a]=='a')
num=10*six+num;
if(num1[i][a]=='b')
num=11*six+num;
if(num1[i][a]=='c')
num=12*six+num;
if(num1[i][a]=='d')
num=13*six+num;
if(num1[i][a]=='e')
num=14*six+num;
if(num1[i][a]=='f')
num=15*six+num;
if(num1[i][a]=='0')
num=0*six+num;
if(num1[i][a]=='1')
num=1*six+num;
if(num1[i][a]=='2')
num=2*six+num;
if(num1[i][a]=='3')
num=3*six+num;
if(num1[i][a]=='4')
num=4*six+num;
if(num1[i][a]=='5')
num=5*six+num;
if(num1[i][a]=='6')
num=6*six+num;
if(num1[i][a]=='7')
num=7*six+num;
if(num1[i][a]=='8')
num=8*six+num;
if(num1[i][a]=='9')
num=9*six+num;
}
if(num1[i][3]=='a')
num=10+num;
if(num1[i][3]=='b')
num=11+num;
if(num1[i][3]=='c')
num=12+num;
if(num1[i][3]=='d')
num=13+num;
if(num1[i][3]=='e')
num=14+num;
if(num1[i][3]=='f')
num=15+num;
if(num1[i][3]=='0')
num=0+num;
if(num1[i][3]=='1')
num=1+num;
if(num1[i][3]=='2')
num=2+num;
if(num1[i][3]=='3')
num=3+num;
if(num1[i][3]=='4')
num=4+num;
if(num1[i][3]=='5')
num=5+num;
if(num1[i][3]=='6')
num=6+num;
if(num1[i][3]=='7')
num=7+num;
if(num1[i][3]=='8')
num=8+num;
if(num1[i][3]=='9')
num=9+num;
ofstream f5("1-1功出电流.txt",ios::app); //将功用电流写入新的txt
if(!f5)
{
cout<<"文件打开失败";
}
f5<<setw(4)<<i<<setw(7)<<num<<endl;
f5.close();
}
system("pause");
system("cls");
}
刚接触MFC 对MFC的文件处理不是很理解