作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在使用 arm-none-linux-gnueabi-g++ 来编译将在嵌入式 Linux 设备上运行的 C++ 代码。
我在 Windows 下使用 arm-none-linux-gnueabi-g++ 并获取将在 Linux 机器上运行的二进制文件作为输出。
为了用新的二进制文件设置嵌入式设备,我需要用二进制文件和一些更多的设置文件创建一个存档文件 (zip)。
到目前为止一切正常。
我需要自动化,以便以二进制文件版本的名称自动创建存档文件。
目前,我们在代码中将版本保留为一个简单的常量 std::string 变量。我们在打印诊断、日志记录等时使用该字符串。
我如何从版本二进制文件中读取它?
或者还有其他方法可以实现该目标吗?
我认为可以将它存储在二进制文件中的某个固定位置并从那里读取它,但真的不知道如何在不损坏二进制文件的情况下做到这一点。
最佳答案
您正在自动创建文件,所以我假设您首先编译它,然后使用生成的二进制文件制作存档。
您可以将版本存储在一个文本文件中,然后在您的代码中#include
该文件:
const std::string version =
#include "version.txt"
;
在version.txt
中:
"version string"
并且在制作存档时,您可以轻松地从文本文件中解析版本。
关于c++ - 如何从 Linux 二进制文件中存储和检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56235948/
我是一名优秀的程序员,十分优秀!