【发布时间】:2014-03-16 04:48:16
【问题描述】:
我有一个程序可以读取文件的hex,对其进行修改,并将修改后的十六进制存储在std::string 中。
例如,我如何将其写入文件
std::string wut="b6306edf953a6ac8d17d70bda3e93f2a3816eac333d1ac78";
并得到它的值
.0n..:j..}p...?*8...3..x
在输出的文件中?
我不想使用sprintf,但我想如果有必要,我会做我必须做的。
【问题讨论】:
-
“文件的十六进制”是什么意思?您是在考虑文件的二进制、未格式化的内容,还是单个十六进制值?
-
内容,全部转换为十六进制。我是这个知识领域的新手,所以...
-
如果我理解正确,您是在读取二进制文件,将数据存储为十六进制字符串,然后要将修改后的数据写回文件(以二进制形式)?跨度>
-
定义二进制文件。老实说,它不是一个专门格式化的文件。所以从某种意义上说,是的。
-
二进制文件的意思是“不是文本文件”。所有文件都是二进制文件,但文本文件意味着内容将被解释为可打印的文本数据。