我有一些數據在陣列中,C/C++:壓縮(GZ)的數據,而無需使用臨時文件
uchar *data = "Data to be compressed."; [Some data]
欲壓縮(GZ)該數據,並在緩衝器中得到輸出。要做到這一點
uchar gzData[MAX_LEN];
一種方法是:
1. Creating a `ogzstream` object.
2. Writing this data into a temporary file
3. close the temporary file.
3. Create a `ifstream` object.
4. Read the temporary file into buffer using ifstream object .
但我不希望,因爲它明顯放緩,整個過程使用的臨時文件這一點。
是否有任何直接的方法來壓縮此數據而不使用任何中間文件?
你意識到你正在創建的是一個流而不是一個文件?這裏有文件系統交互。 – niklasfi