本文整理汇总了C#中System.IO.Compression.DeflateStream.DeflateStream构造函数的典型用法代码示例。如果您正苦于以下问题:C# DeflateStream构造函数的具体用法?C# DeflateStream怎么用?C# DeflateStream使用的例子?那么恭喜您, 这里精选的构造函数代码示例或许可以为您提供帮助。您也可以进一步了解该构造函数所在类System.IO.Compression.DeflateStream
的用法示例。
在下文中一共展示了DeflateStream构造函数的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
//引入命名空间
using System;
using System.Collections.Generic;
using System.IO;
using System.IO.Compression;
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
string directoryPath = @"c:\users\public\reports";
DirectoryInfo directorySelected = new DirectoryInfo(directoryPath);
foreach (FileInfo fileToCompress in directorySelected.EnumerateFiles())
{
Compress(fileToCompress);
}
}
public static void Compress(FileInfo fileToCompress)
{
using (FileStream originalFileStream = fileToCompress.OpenRead())
{
if ((File.GetAttributes(fileToCompress.FullName) & FileAttributes.Hidden) != FileAttributes.Hidden & fileToCompress.Extension != ".cmp")
{
using (FileStream compressedFileStream = File.Create(fileToCompress.FullName + ".cmp"))
{
using (DeflateStream compressionStream = new DeflateStream(compressedFileStream, CompressionLevel.Fastest))
{
originalFileStream.CopyTo(compressionStream);
}
}
}
}
}
}
}
示例2: Main
//引入命名空间
using System;
using System.IO;
using System.IO.Compression;
public class Program
{
static string directoryPath = @"c:\temp";
public static void Main()
{
DirectoryInfo directorySelected = new DirectoryInfo(directoryPath);
Compress(directorySelected);
foreach (FileInfo fileToDecompress in directorySelected.GetFiles("*.cmp"))
{
Decompress(fileToDecompress);
}
}
public static void Compress(DirectoryInfo directorySelected)
{
foreach (FileInfo file in directorySelected.GetFiles("*.xml"))
using (FileStream originalFileStream = file.OpenRead())
{
if ((File.GetAttributes(file.FullName) & FileAttributes.Hidden)
!= FileAttributes.Hidden & file.Extension != ".cmp")
{
using (FileStream compressedFileStream = File.Create(file.FullName + ".cmp"))
{
using (DeflateStream compressionStream = new DeflateStream(compressedFileStream, CompressionMode.Compress))
{
originalFileStream.CopyTo(compressionStream);
}
}
FileInfo info = new FileInfo(directoryPath + "\\" + file.Name + ".cmp");
Console.WriteLine("Compressed {0} from {1} to {2} bytes.", file.Name, file.Length, info.Length);
}
}
}
public static void Decompress(FileInfo fileToDecompress)
{
using (FileStream originalFileStream = fileToDecompress.OpenRead())
{
string currentFileName = fileToDecompress.FullName;
string newFileName = currentFileName.Remove(currentFileName.Length - fileToDecompress.Extension.Length);
using (FileStream decompressedFileStream = File.Create(newFileName))
{
using (DeflateStream decompressionStream = new DeflateStream(originalFileStream, CompressionMode.Decompress))
{
decompressionStream.CopyTo(decompressedFileStream);
Console.WriteLine("Decompressed: {0}", fileToDecompress.Name);
}
}
}
}
}
示例3: Main
//引入命名空间
using System;
using System.Collections.Generic;
using System.IO;
using System.IO.Compression;
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
string directoryPath = @"c:\users\public\reports";
DirectoryInfo directorySelected = new DirectoryInfo(directoryPath);
foreach (FileInfo fileToCompress in directorySelected.EnumerateFiles())
{
Compress(fileToCompress);
}
}
public static void Compress(FileInfo fileToCompress)
{
using (FileStream originalFileStream = fileToCompress.OpenRead())
{
if ((File.GetAttributes(fileToCompress.FullName) & FileAttributes.Hidden) != FileAttributes.Hidden & fileToCompress.Extension != ".cmp")
{
using (FileStream compressedFileStream = File.Create(fileToCompress.FullName + ".cmp"))
{
using (DeflateStream compressionStream = new DeflateStream(compressedFileStream, CompressionLevel.Fastest, true))
{
originalFileStream.CopyTo(compressionStream);
}
Console.WriteLine(string.Format("file compressed to {0} bytes", compressedFileStream.Length));
}
}
}
}
}
}