私は現在、bzlib.hヘッダーの使用方法を学ぶのに助けが必要です。Boostライブラリを使用せずにC++でcompressToBZ2()関数を理解するのを手伝ってくれる人がいるのではないかと思っていました。
void compressBZ2(std::string file)
{
std::ifstream infile;
int fileDestination = infile.open(file.c_str());
char bz2Filename[] = "file.bz2";
FILE *bz2File = fopen(bz2Filename, "wb");
int bzError;
const int BLOCK_MULTIPLIER = 7;
BZFILE *myBZ = BZ2_bzWriteOpen(&bzError, bz2File, BLOCK_MULTIPLIER, 0, 0);
const int BUF_SIZE = 10000;
char* buf = new char[BUF_SIZE];
ssize_t bytesRead;
while ((bytesRead = read(fileDestination, buf, BUF_SIZE)) > 0)
{
BZ2_bzWrite(&bzError, myBZ, buf, bytesRead);
}
BZ2_bzWriteClose(&bzError, myBZ, 0, NULL, NULL);
delete[] buf;
}
私がやろうとしているのは、このようなものを使うことですが、運がありませんでした。.tar.bz2ではなく.bz2ファイルを取得しようとしています
何か助けはありますか?