c++ 使用read函数读取一个文件并将内容存在uint_8类型的数组中
时间: 2024-04-16 09:26:26 浏览: 257
你可以使用C++的fstream库来读取文件并将内容存储在uint8_t类型的数组中。以下是一个示例代码:
```cpp
#include <iostream>
#include <fstream>
#include <vector>
int main() {
std::ifstream file("example.txt", std::ios::binary); // 打开文件
if (!file) {
std::cout << "无法打开文件" << std::endl;
return 1;
}
// 获取文件的大小
file.seekg(0, std::ios::end);
std::streampos fileSize = file.tellg();
file.seekg(0, std::ios::beg);
// 创建一个存储文件内容的uint8_t类型的数组
std::vector<uint8_t> buffer(fileSize);
// 读取文件内容并存储在数组中
if (file.read(reinterpret_cast<char*>(buffer.data()), fileSize)) {
std::cout << "成功读取文件" << std::endl;
// 在这里可以对数组进行操作或处理
// 输出数组内容 (仅作为示例)
for (uint8_t byte : buffer) {
std::cout << static_cast<int>(byte) << " ";
}
std::cout << std::endl;
} else {
std::cout << "无法读取文件" << std::endl;
}
// 关闭文件
file.close();
return 0;
}
```
上述代码中,我们首先使用`std::ifstream`打开文件,并使用`std::ios::binary`标志来指示以二进制模式打开文件。然后,我们使用`file.seekg()`和`file.tellg()`来获取文件的大小。接下来,我们创建了一个`std::vector<uint8_t>`类型的数组来存储文件内容。使用`file.read()`函数,我们将文件内容读取到数组中。最后,我们对数组进行了一些处理,并输出了数组中的内容。
请注意,上述代码中的文件名是"example.txt",你需要根据实际情况替换为你要读取的文件名。
阅读全文