我需要使用C语言将几个内存中的文件连接成一个“标准”(不是我自己的)归档文件格式。压缩并不重要,但应该是一个文件,即.tar
文件。因此,我需要将此存档文件写入stdout
。
在C#中我通常使用System.IO.Packaging
命名空间,但现在我需要使用C.大多数示例描述了文件系统的压缩实体,但我不能只使用tar
实用程序,因为我在unsigned char *
变量中有数据,而不是在磁盘上。我知道libtar可以提供帮助,但我发现的所有示例都使用了临时文件。我想找到一个不创建临时文件的解决方案。
tar
应该是一个仅附加格式。我相信你可以使用any的libtar
例子,除了使用tar_fdopen
和STDOUT_FILENO
用于fd
...