温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C#中变量怎样进行数据压缩

发布时间:2024-12-06 14:59:54 来源:亿速云 阅读:78 作者:小樊 栏目:编程语言

在C#中,可以使用System.IO.Compression命名空间下的类来对数据进行压缩。以下是一个简单的示例,展示了如何使用GZip压缩和解压缩字符串:

using System;
using System.IO;
using System.IO.Compression;
using System.Text;

class Program
{
    static void Main()
    {
        string originalData = "这是一个需要压缩的字符串。";

        // 压缩数据
        byte[] compressedData = Compress(Encoding.UTF8.GetBytes(originalData));
        Console.WriteLine("压缩后的数据大小: " + compressedData.Length);

        // 解压缩数据
        byte[] decompressedData = Decompress(compressedData);
        string decompressedString = Encoding.UTF8.GetString(decompressedData);
        Console.WriteLine("解压缩后的字符串: " + decompressedString);
    }

    static byte[] Compress(byte[] data)
    {
        using (var memoryStream = new MemoryStream())
        {
            using (var gzipStream = new GZipStream(memoryStream, CompressionMode.Compress))
            {
                gzipStream.Write(data, 0, data.Length);
            }

            return memoryStream.ToArray();
        }
    }

    static byte[] Decompress(byte[] data)
    {
        using (var memoryStream = new MemoryStream(data))
        {
            using (var gzipStream = new GZipStream(memoryStream, CompressionMode.Decompress))
            {
                using (var memoryStreamdecompressed = new MemoryStream())
                {
                    gzipStream.CopyTo(memoryStreamdecompressed);
                    return memoryStreamdecompressed.ToArray();
                }
            }
        }
    }
}

这个示例中,Compress方法将字符串转换为字节数组并使用GZip压缩,Decompress方法将压缩后的字节数组解压缩回字符串。你可以根据需要替换为其他压缩算法,如Deflate

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI