如何用CMD将16进制的文本输出成二进制的文件

如何用CMD将16进制的文本输出成二进制的文件,第1张

你这是想把十六进制的文本转为真正的二进制文件

你得有个工具能写入任意二进制数,windows下现成的工具极少。

网上有个能够用cscript存二进制文件的例子可以参考,低版本windows自带的的debug,可以生成二进制文件,但需要有点汇编语言的能力。

如果windows带有.net framework可以自己写一个转换程序.

或者使用十六进制编辑器winhex就可以反存回去。

如果不会写程序就得使用linux命令。下载cygwin,里面有xxd既可以正向查看,还可以反向恢复。

问题一:如何查看二进制文件的文件内容? 10分 用UltraEdit这个软件

问题二:UltraEdit 怎么看二进制文件 【◆】【你好】【◆】

.

UltraEdit提供了这样的功能,它能够显示二进制文件的内容,即将二进制代码显示为十六进制。

.

按Ctrl+H键或者有一个二进制的图标.16进制 其实就是2进制。

16进制 就是 为了 输入和输出 方便和简单

你只要 把 1 看成 0001 把 F 看成 1111

.

如果你认为我的解答对解决你的问题有帮助.请点击我的回答下方【选为满意答案】按钮.

问题三:如何查看txt文件的二进制文件 c++ 可以读取二进制文件即.bin形式的 FILE * fb fb = fopen(文件路径/文件名.bin, rb)

fread(H_imag, sizeof(float), len, fb)

fclose(fb)len是数据的长度

问题四:C++中怎么打开一个二进制文件 估计你对二进制文件概念搞错了,你现在写的是二进制文件(就是计算机内部的格式),这好比电报码不经过译码你是看不懂的。我们能看懂的无论是10进制,16进制,2进制数其实都是从计算机内部的格式(2进制的码)转换出来的文本( 包括楼上说看到四字节05 00 00 00实际上也是用查看工具转出的16进制文本),因此,能看到的2进制数101,实际上是个“101”文本,并不是真正的2进制的码。如果你要保存5的 “二进制码” ,要通过文本查看器就能看到“101”,你实际上要写5的“二进制文本”而不是写“二进制码”。

问题五:在c语言中如何打开二进制文件 不知lz希望得骇什么

二进制的意思是按照数据的原有二进制值写入

与文本模式的差别是不处理行尾

“china” 的 ASCII 就是这样子,还能是什么

问题六:如何把EXE文件打开成二进制文件 您好。

将其导入ultra edit,里面有导出二进制文件选项

有各最简单的方法,windows其实自带了一个这样的工具exe2bin.exe在运行里输入cmd打开msdos方式,里面输入

c:\>exe2bin /?

就可以查看一下这个命令的方式,比如

c:\>exe2bin c:\a.exe b.bin

再用记事本查看就可以了,不过这种方法只能对exe文件有效。

如果还有问题,可以继续追问,感谢。

问题七:如何查看二进制文件的内容 用WINHEX之类的二进制查看软件打开文件即可看到二进制文件的内容。

问题八:如何快速读取二进制文件 Visual C++

如何:读取二进制文件

下面的代码示例演示如何从文件中读取二进制数据。使用了 System.IO 命名空间中的两个类:FileStream 和 BinaryReader。FileStream 表示实际的文件。BinaryReader 为允许二进制访问的流提供接口。

下面的代码示例使用由如何:编写二进制文件中的代码创建的称为 data.bin 的文件。

示例

binary_read.cpp

pile with: /clr

#using

using namespace System

using namespace System::IO

int main()

{

String^ fileName = data.bin

try

{

FileStream^ fs = gew FileStream(fileName, FileMode::Open)

BinaryReader^ br = gew BinaryReader(fs)

Console::WriteLine(contents of {0}:, fileName)

while (br->BaseStream->Position BaseStream->Length)

Console::WriteLine(br->ReadInt32().ToString())

fs->Close( )

}

catch (Exception^ e)

{

if (dynamic_cast(e))

Console::WriteLine(File '{0}' not found, fileName)

else

Console::WriteLine(Exception: ({0}), e)

return -1

}

return 0

}

补充

手上的一个VB项目(过程中发现,.Net果然是好啊),需要在一个ActiveX中实现HTTP下载功能,我是采用InternetreadFile这个API来实现,一开始的代码我是这么写的

Function Getdownload(sUrl As String) As boolen

Dim s As String

Dim hOpen As Long

Dim hOpenUrl As Long

Dim bDoLoop As Boolean

Dim bRet As Boolean

Dim sReadBuffer As String * 2048

Dim lNumberOfBytesRead As Long

hOpen = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_PRECONFIG, vbNullString, vbNullString, 0)

hOpenUrl = InternetOpenUrl(hOpen, sUrl, vbNullString, 0, ......>>

问题九:c++为什么无法打开二进制文件 添加位ios::in或ios::out。即fstream file(data.dat,ios::binary|ios:in)

问题十:linux 怎么看完二进制文件 查看二进制文件,用od或hexdump命令。

$ od -tx1 -tc -Ax binFile000000 61 62 63 64 65 31 32 33 34 35 61 62 63 64 65 31 a b c d e 1 2 3 4 5 a b c d e 1000010 32 33 34 35 61 62 63 64 65 31 32 33 34 35 61 62 2 3 4 5 a b c d e 1 2 3 4 5 a b000020 63 64 65 31 32 33 34 35 0a c d e 1 2 3 4 5 \n000029

-tx1选项表示将文件中的字节以十六进制的形式列出来,每组一个字节(类似hexdump的-c选项)

-tc选项表示将文件中的ASCII码以字符形式列出来(和hexdump类似,输出结果最左边的一列是文件中的地址,默认以八进制显示)

-Ax选项要求以十六进制显示文件中的地址

其实不论是在CMD中还是通过鼠标点击或别的地方启动程序,原理都是一样的:SHELL加载程序到内存,自动重定位(可执行文件里的偏移和它在内存中的偏移有差异),然后更换CONTEXT(包括IP指令,REG,线程上下文,等等),准备好了后,CPU就从ENTRY

POINT(主线程入口)开始执行。

当然了,可执行文件至少有几种,比如16位的,在CMD控制台中,以虚拟86模式执行;32位的控制台程序和普通的窗口程序差异很小,都是一样的PE格式;

控制台可以启动所有这些程序;反之,从任务管理器,资源管理器等GUI模式下,也可以启动控制台程序。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/8127590.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-13
下一篇2023-04-13

发表评论

登录后才能评论

评论列表(0条)

    保存