CFile fr,fw;
fr.Open(_T(strPath[0]),CFile::modeRead|CFile::typeBinary);
fw.Open(_T("1.txt"),CFile::modeWrite|CFile::typeText|CFile::modeCreate);
char *pRead = new char[fr.GetLength()];
char pBuf[4] = {0};
char pbuffer[10000];
char *pbuffer1=new char[10000];
if (int nRead = fr.Read(pRead, fr.GetLength()))
{
for (int n = 0; n < nRead; )
{
*pbuffer=pRead[n];
*pbuffer1=pRead[n+1];
strcat(pbuffer,pbuffer1);//将这两个字节的二进制连在一起
sprintf(pBuf, "%02d ", *pbuffer);
fw.Write(pBuf, 3);
printf("\r\n");
n++;
n++;
}
}
fr.Close();
fw.Close();这样做的话,正数可以,一到负数就提示出错了,请大家帮帮忙
fr.Open(_T(strPath[0]),CFile::modeRead|CFile::typeBinary);
fw.Open(_T("1.txt"),CFile::modeWrite|CFile::typeText|CFile::modeCreate);
char *pRead = new char[fr.GetLength()];
char pBuf[4] = {0};
char pbuffer[10000];
char *pbuffer1=new char[10000];
if (int nRead = fr.Read(pRead, fr.GetLength()))
{
for (int n = 0; n < nRead; )
{
*pbuffer=pRead[n];
*pbuffer1=pRead[n+1];
strcat(pbuffer,pbuffer1);//将这两个字节的二进制连在一起
sprintf(pBuf, "%02d ", *pbuffer);
fw.Write(pBuf, 3);
printf("\r\n");
n++;
n++;
}
}
fr.Close();
fw.Close();这样做的话,正数可以,一到负数就提示出错了,请大家帮帮忙
解决方案 »
- 非模式对话框的显示到最前面的问题
- 带图像预览的打开对话框的问题
- ICON风格的LIST CTRL,如何获取图标的标题
- CTreeCtrl的单击事件,我在此中为何得不到一个项目的TEXT文本??
- 100分求MSDN6.0 (2cd)!!!
- 在接受到大于6K字节时,OnReceive()会触发多次?
- 关于用API HOOK监视文件的问题,高手请进
- 有关Dll文件中导出lib的问题
- 我几乎花了整整两个星期的 时间看完了《Windows程序设计》,好象也知道一点东西,不过,不象大家说的怎么怎么,我的代价是这些天来没有在课上听一点点的动西啊,值得吗!!!
- 谁能帮我把这个EXE文件里的2句话去掉啊
- 为什么程序返回值不为0
- 将txt文件中内容显示到文本框中(急...在线等)
int iData = atoi(str);
对于负数,可以这么做:
先将这个数进行取反,得到对应的正数,
在显示时,再显示成这样sprintf(pBuf,"-%02d,*pbuffer);
可以试试。
文件格式:
前33736个字节是文件头,这个用Seek可以跳过,剩下的都是数据,两个字节表示一个采样的数据.
pbuffer[1]=pRead[n+1];
//strcat(pbuffer,pbuffer1);//将这两个字节的二进制连在一起
sprintf(pBuf, "%02d ",*(short int*)pbuffer);
很简单,如果用ASCII码显示的话,就一定是正数。把你所有的变量都定义成unsigned的。