首页 > 解决方案 > 如何将多个内存文件写入C中的一个存档文件?

问题描述

我需要使用 C 语言将多个内存文件连接到一种“标准”(不是我自己的)存档文件格式。压缩并不重要,但它应该是一个文件,即一个.tar文件。因此,我需要将此存档文件写入stdout.

在 C# 中,我通常使用System.IO.Packaging命名空间,但现在我需要使用 C。大多数示例都描述了文件系统的压缩实体,但我不能只使用该tar实用程序,因为我的数据在unsigned char *变量中,而不是在磁盘上。我知道libtar可以提供帮助,但我发现的所有示例都使用临时文件。我想找到一个不创建临时文件的解决方案。

标签: ctar

解决方案


tar 应该是仅附加格式。我相信您可以使用除with for ...之外的任何libtar示例tar_fdopenSTDOUT_FILENOfd


推荐阅读