技术_c++_ASCII转二进制文件
北冥工作室吧
全部回复
仅看楼主
level 6
#include
#include
short change(char c){ switch(c) { case '0':return 0x0;break; case '1':return 0x1;break; case '2':return 0x2;break; case '3':return 0x3;break; case '4':return 0x4;break; case '5':return 0x5;break; case '6':return 0x6;break; case '7':return 0x7;break; case '8':return 0x8;break; case '9':return 0x9;break; case 'A':return 0xA;break; case 'B':return 0xB;break; case 'C':return 0xC;break; case 'D':return 0xD;break; case 'E':return 0xE;break; case 'F':return 0xF;break; case 'a':return 0xA;break; case 'b':return 0xB;break; case 'c':return 0xC;break; case 'd':return 0xD;break; case 'e':return 0xE;break; case 'f':return 0xF;break; default:return 16;break; }}void main(){ int size; cin>>size; char *s=new char[size+1]; ifstream fs1("being.txt"); ofstream fs2("being.d2s"); fs1.setmode(filebuf.binary); fs2.setmode(filebuf.binary); fs1.read(s,size); char ta[1000]; int j=0; for(int i=0;i<=size;i++) { int t=change(s[i]); i++; if(i<=size) { t=16*t+change(s[i]); ta[j]=t; j++; } else { t=16*t; ta[j]=t; j++; break; } } fs2.write(ta,j);}
2006年05月31日 01点05分 1
level 6
出现的问题,在c++中,char 1字节 short 2字节 int 4字节
2006年05月31日 01点05分 2
1