问题描述
|
这个问题已经在这里有了答案:
解决方法
首先,您需要对IO流做更多的工作才能完成对您打算压缩的文件的写入。下面的示例显示了执行此操作的一种方法。
如果只想使用.net框架,而只想压缩和解压缩,则可以使用System.IO.Compression.GZipStream,它遵循GNU Zip格式。请注意,这与ZIP存档格式不同。为此,您需要第三方库,例如DotNetZip。后者比GZipStream更易于实现,并且可能是更好的选择。
例如,根据您的代码修改DotNetZip \的示例:
private void button1_Click(object sender,EventArgs e)
{
string path = DayFuturesDestination + \"\\\\\" + txtSelectedDate.Text + \".txt\";
StreamWriter Strwriter = new StreamWriter(path);
Strwriter.Write(textToAdd);
Strwriter.Flush();
Strwriter.Close();
using (ZipFile zip = new ZipFile())
{
zip.AddFile(path);
zip.Save(path + \".zip\");
}
}
, 您将需要一个zip库来压缩文件。试试这个:http://dotnetzip.codeplex.com/
或这个:http://www.icsharpcode.net/OpenSource/SharpZipLib/(在The Orchard Project中使用)
它们看起来都很易于使用。