请问如何把一个二进制文件转成10进制文件即用记事本可以直接打开观看的文件

starnight2008 2004-11-22 11:00:03
如题。
...全文
328 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
starnight2008 2004-11-23
  • 打赏
  • 举报
回复
唉,散分了,原来我把问题想错了。我原来的法子就可以实现二进制到十进制,但是我要解的文件经过了加密操作,解了也没用
mingbao 2004-11-22
  • 打赏
  • 举报
回复
很容易实现,假如每次转换一个字节.
CFile theSrcFile, theDstFile;
theSrcFile.Open("d:\\aaa.exe",CFile::modeRead|CFile::typeBinary);
theDstFile.Open("d:\\aaa.txt",CFile::modeWrite|CFile::typeBinary);
BYTE pBuff;
UINT Sent=0;
UINT temp=0;
char theResult[4]={0}; //一个字节转化成 10 进制顶多为 255, 不会超过 3 位.
CString str="";
while(Sent<theSrcFile.GetFileSize( ))
{ temp=0;
temp=theFile.Read(pBuff, 1);
str.Format("%d", pBuff);
memset(theResult,0,4);
strcpy(theResult, str.operator lpcstr( ) ) //好像是这个成员涵数吧
theDstFile.Write(theResult+" ", strlen(theResult+" "));
Sent+=temp;

}

theSrcFile.Close(); theDstFile,Close();
AfxMessageBox("文件转换完毕!",MB_OK+MB_ICONINFORMATION);
starnight2008 2004-11-22
  • 打赏
  • 举报
回复
例如,我把字符串"This is a test"存到二进制文件中,然后我想我二进制文件中的一对乱码还原为
"This is a test"怎么做??
starnight2008 2004-11-22
  • 打赏
  • 举报
回复
那么用UltraEdit怎么转换
DentistryDoctor 2004-11-22
  • 打赏
  • 举报
回复
UltraEdit,HexEdit之类的就行。
pomelowu 2004-11-22
  • 打赏
  • 举报
回复
用专门的编辑查看工具就是了,比如UltraEditor或者SourceInsight之类。
北京的雾霾天 2004-11-22
  • 打赏
  • 举报
回复
相对来说用十进制看倒不如用十六进制看更好让人明白程序的意图.

你可以用的编辑环境,比如VS6.0打开文件时按二进制打开就可以查看文件并可以修改了.不过记得备份你的文件,要是改坏了可以再替换的.
lsgt 2004-11-22
  • 打赏
  • 举报
回复
把文件读进内存,然后在内存中转换成你需要的格式输出到另外的文件。
saliors 2004-11-22
  • 打赏
  • 举报
回复
要看你的二进制文件都是什么啊,怎么可以一概而论
不过你可以用记事本直接打开二进制文件,只是不知你能不能看懂。

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧