我有一个程序(用C#编写)直接读取/写入数据(无需服务器的直接文件访问)到firebird数据库文件。为了更好的交换,我希望(不)压缩它们的导入/导出,以便在互联网上进行更好的交换,而无需外部程序对其进行压缩。C#免费压缩库,支持7zip(LZMA)
我知道#ziplib它支持Zip,GZip,Tar和BZip2。
还有什么免费的C#压缩库知道吗? 有没有支持LZMA的.NET库,所以我可以读/写“.7z”文件?
我有一个程序(用C#编写)直接读取/写入数据(无需服务器的直接文件访问)到firebird数据库文件。为了更好的交换,我希望(不)压缩它们的导入/导出,以便在互联网上进行更好的交换,而无需外部程序对其进行压缩。C#免费压缩库,支持7zip(LZMA)
我知道#ziplib它支持Zip,GZip,Tar和BZip2。
还有什么免费的C#压缩库知道吗? 有没有支持LZMA的.NET库,所以我可以读/写“.7z”文件?
这是一个很好的文章由彼得·布朗伯格写:
7Zip (LZMA) In-Memory Compression with C#
显示一个简单的C#
SevenZip.Compression.Lzma.SevenZipHelper
类使高压缩的 使用C#的内存中对象。添加新的 7Zip格式LZMA Cookie压缩 类到先前发布的 CookieCompression实用程序。
7-ZIP有一个免费的源代码,为LZMA算法公共领域的C#SDK:
这似乎是相当一个鲜为人知的事实,但.NET库包括packaging/compression API
如果你正在编写单独的文件,那么你可以只把它当作一个流,并使用内置GZipStream
/DeflateStream
(虽然在我做的一些测试中,#ZipLib在比例和速度方面都超出了MS提供的)。或者在框架的某个地方有内置的zip支持。不过,我不知道LZMA。
您可以尝试SevenZipSharp
当心:GZipStream具有的4Gb的大小限制
这可能是值得指出的是,它是免费的源代码,公共领域,并在C#:) – 2009-01-16 10:30:17
@乔恩飞碟双向:您正确的。添加了这些信息。 – 2009-01-16 10:34:08