c++ - 使用while循环读取字符数据文件
问题描述
我有一个文件,其中包含如下数据:
1F B8 08 08 00 00 00 00
我正在将它读入一个 int,将其转换为一个字符,并将其存储在一个数组中。
int n, i = 0;
char c;
while (ifs >> std::hex >> n) {
c = static_cast<unsigned char>(n);
r[i++] = c;
}
工作正常。如果数据中没有空格,我该怎么做,即
1FB8080800000000
上面的代码只是将 n 填充到 maxint 并退出。我可以使用 getc 等创建一些东西,但我希望 C++ 代码能够处理这两种情况。
解决方案
推荐阅读
- java - 程序不断终止,我不知道为什么
- git - 获取文件在 repo 中完全匹配时的所有提交哈希
- flutter - 如何在 Flutter 中使用 ImagePicker 打开手机图库或相机或任何其他可用的媒体。
- shopify - Liquid - 了解“where”的使用
- flutter - 颤动中的重绘边界寿命
- docker - standard_init_linux.go:211:exec 用户进程在将 shell 脚本复制到容器时导致“没有这样的文件或目录”
- c# - 将 tiff 文件转换为 pdf 时出现 C# 内存不足异常
- bash - 如何grep版本的apache?
- node.js - 在天蓝色上部署反应应用程序后出现错误
- javascript - Luxon 区间人类可读