文件压缩(C#代码)

?





1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

/// <summary>

/// 解压缩文件(一种是BZIP2算法,另一种是GZIP算法)

/// </summary>

public
class DecompressFiles

{

    /// <summary>

    /// 创建生成gz的压缩文件,该方法用于生成站点地图的文件

    /// </summary>

    /// <param name="sourcefile">XX.xml 的文件格式</param>

    /// <param name="gzfile">XX.xml.gz 的文件格式</param>

    public
static void CreateGz(string
sourcefile, string
gzfile)

    {

        FileStream srcFile = File.OpenRead(sourcefile);//要压缩的文件放在此,服务器上了。为源文件创建读取文件的流实例

        //为压缩文件创建写入文件的流实例       

        GZipOutputStream zipFile = new
GZipOutputStream(File.Open(gzfile, FileMode.Create));

        try

        {

            byte[] FileDate = new
byte[srcFile.Length];//创建缓冲数据

            srcFile.Read(FileDate, 0, (int)srcFile.Length);//读取源文件

            zipFile.Write(FileDate, 0, FileDate.Length);//写入压缩文件

        }

        catch
(Exception ee)

        {

            string
s = ee.Message;

        }

        srcFile.Close();

        zipFile.Close();

    }

}

  

时间: 2024-10-13 19:15:56

文件压缩(C#代码)的相关文章

前端部署ant+yuicompressor文件压缩+获取版本号+SSH发布(部分代码)

文件压缩: <apply executable="java" parallel="false" failonerror="true" dest="../../release/publish/ecshop" append="false" force="true"> <fileset dir="../../release/publish/ecshop"&

如何利用Grunt生成对应的Source Map文件,线上代码压缩使用chrome浏览器便于调式

首先我们来说说为何要生成sourceMap文件呢?简单的说,sourceMap是为了压缩后的代码调式提供方便,比如线上的JS文件已经压缩了,但是线上比如说有bug,但是代码已经是压缩后的,对于开发并不好调式,所以想生存一个对应的Map文件,然后使用chrome浏览器在源文件未压缩的JS文件下调式. 那么Map文件到底是什么呢?简单的来讲它就是记录信息,记录一些为压缩之前的js文件的位置,及压缩后的文件对应未压缩之前的文件,对应第几行第几列的那些代码! 在讲解使用grunt生存Map文件之前,我们

小代码 项目(3)M 文件压缩

 <html> <HEAD></HEAD> <BODY>   <textarea rows="10" cols="50"> </textarea>      <FONT style="FONT-SIZE: 120pt; COLOR: green; FONT-FAMILY: Webdings">û</FONT> <textarea rows=&qu

grunt-js文件压缩

grunt常用函数说明: Grunt : javascript世界的构建工具. grunt.initConfig : 定义各种模块的参数,每个成员项对应的一个同名模块. grunt.loadNpMTasks : 加载完成所需要的模块. grunt.registerTask : 定义具体的任务.第一个参数为任务名.第二个参数是一个数组,表示该任务需要一次使用的模块. 用于模块配置,它接受一个对象作为参数.该对象的成员与使用的同名模块--对应. (js文件压缩代码) // Project confi

php 文件压缩

PclZip文件压缩实现(推荐) 我在做项目是的时候有个打包下载的需求:把上传的多个文件压缩成一个文件并下载,我用的比较强大的PclZip类实现的.我的用的是thinkphp3.2框架开发的,具体实现代码如下  /**     * 压缩文件     * @param $zipName  压缩的文件名     * @param $fileName 要压缩的文件路径的数组或字符串     *  @param  $savePath  要保存的路径     * @return bool     */ p

基于哈夫曼编码的文件压缩(c++版)

本博客由Rcchio原创 我了解到很多压缩文件的程序是基于哈夫曼编码来实现的,所以产生了自己用哈夫曼编码写一个压缩软件的想法,经过查阅资料和自己的思考,我用c++语言写出了该程序,并通过这篇文章来记录一下自己写该程序学到的东西.因为本人写的程序在压缩率上,还有提升的空间,所以本文将不定期更新,但程序整体的思路不会有较大的改动. 一.基于哈夫曼编码可实现压缩文件的原理分析 在计算机中,数据的存储都是二进制的,并且以字节作为基本的存储单位,像英文字母在文本中占一个字节,汉字占两个字节,我们把这种每一

Huffman的应用之文件压缩与解压缩

文件压缩与解压缩> 最近这段时间一直在学习树的这种数据结构,也接触到了Huffman树以及了解了什仫是Huffman编码,而我们常用的zip压缩也是利用的Huffman编码的特性,那仫是不是可以自己实现一个文件压缩呢?当然可以了.在文件压缩中我实现了Huffman树和建堆Heap的代码,zip压缩的介绍> http://www.cricode.com/3481.html 下面开始介绍自己实现的文件压缩的思路和问题... 1).统计>读取一个文件统计这个文件中字符出现的次数. 2).建树&

文件压缩与解压

文件压缩 通过某种特殊的编码方式将数据信息中存在的重复度.冗余度有效地降低,从而达到数据压缩的目的.这里用的是哈夫曼树产生特殊编码. //compress.h #pragma once typedef unsigned long long longType; struct CharInfo { unsigned char _ch;//字母信息 longType _count;  //出现次数 string _code;     //哈夫曼编码 CharInfo(){} CharInfo(long

WP8.1 Study12:文件压缩与Known Folder(包含SD卡操作)

一.文件压缩 当应用程序保存和加载数据,它可以使用压缩. 1.使用 Windows.Storage.Compression.Compressor 压缩,获得一个Compressor stream. var s = await destFile.OpenAsync(FileAccessMode.ReadWrite); Compressor compressor = new Compressor(s.GetOutputStreamAt(0), CompressAlgorithm.Mszip, 0);

Java实现文件压缩与解压[zip格式,gzip格式]

Java实现ZIP的解压与压缩功能基本都是使用了Java的多肽和递归技术,可以对单个文件和任意级联文件夹进行压缩和解压,对于一些初学者来说是个很不错的实例. zip扮演着归档和压缩两个角色:gzip并不将文件归档,仅只是对单个文件进行压缩,所以,在UNIX平台上,命令tar通常用来创建一个档案文件,然后命令gzip来将档案文件压缩. Java I/O类库还收录了一些能读写压缩格式流的类.要想提供压缩功能,只要把它们包在已有的I/O类的外面就行了.这些类不是Reader和Writer,而是Inpu