首页 > 解决方案 > 如何在内存中使用二进制数据创建 std::ofstream 文件而不将其写入存储?

问题描述

如何使用内存中已有的字符串数据在内存中创建二进制文件。

我已经编写了以下代码来使用我在内存中的字符串流创建一个 .jpg 文件。它工作正常。但在那里我必须在存储中创建一个文件。

std::string file_name_temp = "temp.jpg";
std::ofstream out_file_temp(file_name_temp.c_str(), std::ios::out | std::ios::binary);
out_file_temp << std::hex << image_data;
out_file_temp.close();

目前我正在再次从内存中读取文件并将其加载到 GUI 应用程序中。这行得通。但我需要避免这种对存储的写入,而是在内存本身中创建一个 .jpg 文件,然后加载到 UI。有没有办法实现上述功能?

我的图像数据是字符串格式。

标签: c++ofstream

解决方案


推荐阅读