【13】MD5编码、Zlib压缩解压缩
来源:互联网 发布:mac office 2011 威锋 编辑:程序博客网 时间:2024/06/07 09:50
1.MD5加密
/// <summary> /// 使用MD5加密算法 /// </summary> /// <param name="md5MessageStr">需要加密的字符串</param> /// <returns>加密后返回字符串</returns> public static string GetMD5String(string md5MessageStr) { using (MD5 md5 = new MD5CryptoServiceProvider()) { byte[] convertValue = Encoding.UTF8.GetBytes(md5MessageStr); byte[] resultValue = md5.ComputeHash(convertValue); string strResult = string.Empty; for (int i = 0; i < 16; i++) { strResult += resultValue[i].ToString("x2"); } return strResult; } }
2.Zlib压缩解压缩
nuget获取zlib.net
using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Web;using zlib;namespace LargePlatformService.Logic{ public class ZLibNetHelper { /// <summary> /// zlib.net 解压函数 /// </summary> /// <param name="strSource">带解压数据源</param> /// <returns>解压后的数据</returns> public static string DeflateDecompress(string strSource) { int data = 0; int stopByte = -1; byte[] Buffer = Convert.FromBase64String(strSource); // 解base64 MemoryStream intms = new MemoryStream(Buffer); zlib.ZInputStream inZStream = new zlib.ZInputStream(intms); List<byte> inByteList = new List<byte>(); int i = 0; while (stopByte != (data = inZStream.Read())) { inByteList.Add((byte)data); } inZStream.Close(); return System.Text.Encoding.UTF8.GetString(inByteList.ToArray(), 0, inByteList.Count); } /// <summary> /// zlib.net 压缩函数 /// </summary> /// <param name="strSource">待压缩数据</param> /// <returns>压缩后数据</returns> public static string DeflateCompress(string strSource) { MemoryStream outms = new MemoryStream(); byte[] bytes = System.Text.Encoding.UTF8.GetBytes(strSource); MemoryStream inms = new MemoryStream(bytes); zlib.ZOutputStream outZStream = new zlib.ZOutputStream(outms, zlib.zlibConst.Z_DEFAULT_COMPRESSION); try { CopyStream(inms, outZStream); } catch (Exception ex) { throw ex; } finally { outZStream.Close(); } return Convert.ToBase64String(outms.ToArray()); } public static void CopyStream(System.IO.Stream input, System.IO.Stream output) { byte[] buffer = new byte[2000]; int len; while ((len = input.Read(buffer, 0, 2000)) > 0) { output.Write(buffer, 0, len); } output.Flush(); } }}
阅读全文
0 0
- 【13】MD5编码、Zlib压缩解压缩
- zlib压缩解压缩文件
- android ZLib压缩/解压缩
- 使用zlib压缩解压缩文件
- zlib minizip 压缩与解压缩
- java压缩,解压缩zlib文件
- 压缩解压缩的函数库zlib的使用
- 使用ZLib 压缩/解压缩 zip文件
- 利用zlib,lzo压缩与解压缩字符
- c++ zlib(qt)压缩与解压缩
- 使用ZLib库压缩解压缩Demo
- 【转】C++ ZLib压缩与解压缩
- qt 调用zlib压缩与解压缩功能
- 用zlib压缩、解压缩流、判断是否压缩过了
- Huffman编码压缩解压缩文件
- Huffman编码实现压缩解压缩
- vb6中用zlib.dll实现压缩/解压缩字节数组
- ZLib,GZip,Zip压缩与解压缩工具类
- 第五周——项目三—括号的匹配
- 本地配置多个Git仓库
- 13章,拷贝控制
- python xml解析器
- canvas 实现声呐发声效果
- 【13】MD5编码、Zlib压缩解压缩
- slf4j+log4j使用
- setBackgroudResource或者setBackgroundDrawable导致padding失效的问题
- hdu3435 A new Graph Game
- LeetCode Reverse Integer(反向整数)
- Linux服务器关于iptables的常见操作
- P_003.让eclipse自动生成的注释的时间显示英文,不用中文
- Java CSV操作(导出和导入)
- Linux安装phpStudy