我想知道是否有可能,例如,在内存中获取一段数据,将其读入输出字符串流(作为二进制数据)并将其写入套接字以供客户端应用程序处理。
我在尝试这样做时遇到的问题如下:
例子:
char name[1024] = "Test";
std::ostringstream message (std::stringstream::out | std::stringstream::binary);
len = strlen(name);
message.write(reinterpret_cast<const char*>(&len), sizeof(int));
message.write(test, len*sizeof(char));
我想将此字符串流写入其中包含所有数据的套接字,但问题是:字符串流写入只执行第一次,在这种情况下写入 4(字符串的长度)并且没有后续写入. 我在这里错过了什么吗?
如果这不是最好的方法,那么最好的方法是什么?这部分是为了减少缓存内存快照的文件 I/O。
提前致谢..