



貌似10几天都没有更新了, 因为正在苦练F#内功心法, 同时还要现学现用完成一个S/C模式的管理系统, 实在是有些心力不足.
.NET命令空间System.IO.Compression提供了基本的流压缩实现, 其中包含RFC文档中规定的Deflate和GZip两种算法.
两种算法有许多相同点:
也有一些区别:
总的来讲, GZip略胜一筹. 下面是F#代码:
#light open System.IO open System.IO.Compression // GZip压缩文件 // 参数: 文件名 字据 let GZipWrite (filename : string) (data : string) = // 创建文件流 use fileStream = new FileStream(filename, FileMode.Create, FileAccess.Write) // 创建压缩流 use compressionStream = new GZipStream(fileStream, CompressionMode.Compress) use writer = new StreamWriter(compressionStream) // 将数据写入流中 writer.Write(box data) writer.Close() // GZip解压文件 // 参数: 文件名 // 返回: 数据 let GZipRead filename = use fileStream = new FileStream(filename, FileMode.Open, FileAccess.Read) use compressionStream = new GZipStream(fileStream, CompressionMode.Decompress) use reader = new StreamReader(compressionStream) let data = reader.ReadToEnd() reader.Close() data










More Options ...

Categories
Tag Cloud
Blog RSS
Comments RSS

Void (Default)
Life
Earth
Wind
Water
Fire
Lightweight