我想了解为什么我的代码不能按需要执行。它创建一个GZipStream,然后将对象保存为压缩文件到我的硬盘上,但保存的文件总是0字节。用GZipStream压缩
现在我知道如何save a file using GZipStream,但是,我的问题不是如何去做。我的问题纯粹是为什么此代码保存0字节(或为什么FileStream工作和内存不)。
private void BegingCompression()
{
var bytes = File.ReadAllBytes(this.fileName);
using (MemoryStream ms = new MemoryStream(bytes))
{
ms.ReadByte();
using (FileStream fs =new FileStream(this.newFileName, FileMode.CreateNew))
using (GZipStream zipStream = new GZipStream(ms, CompressionMode.Compress, false))
{
zipStream.Write(bytes, 0, bytes.Length);
}
}
}
在问候的源代码,this.fileName = c:\Audio.wav
和newFileName
是c:\Audio.wav.gz
(但也尝试c:\audio.gz
)
您是否看过他的问题? – SergeyS
谢谢@SergeyS。我会编辑它。 –
您可能还想考虑转换为MP3;请参阅http://www.codeproject.com/Articles/5901/C-MP3-Compressor –