2
在我的项目中,通过套接字读取和写入消息使用Zlib压缩过滤器进行压缩,我想知道如何处理文件。 有什么更好的方法更好的速度?将数据保存在缓冲区中而不使用硬盘?发送和接收带有套接字的压缩文件
我无法使用boost来传输文件,因此欢迎任何帮助和示例。
我使用下面的代码来发送压缩消息:
std::string data_
std::stringstream compressed;
std::stringstream original;
original << data_;
boost::iostreams::filtering_streambuf<boost::iostreams::input> out;
out.push(boost::iostreams::zlib_compressor());
out.push(original);
boost::iostreams::copy(out, compressed);
data_ = compressed.str();
boost::asio::write(socket_, boost::asio::buffer(data_ + '\n'));
编辑:
我想知道如何无需保存压缩副本的HD压缩文件。将您的字节直接保存到缓冲区中,然后发送到套接字。服务器端必须接收文件并解压
请您详细说明您遇到的问题吗?什么不行? –