在实际生产中,比如使用xml json 等传输大量数据的时候,有时候会出现等待时间过长,这里分享一个压缩传输的方法

首先到网上去下载一个 ICSharpCode.SharpZipLib.dll 的dll (百度和google)都是可以搜索到的

这里本人是在传输xml 格式文本的时候感觉网速稍慢,所以找到了此优化的方法

这里把代码分享出来

这里是压缩数据的方法

 using System;
using System.Collections.Generic;
using System.Web;
using System.Web.Services;
using PNXSoft.Framework.Configuration;
using PNXSoft.Framework.DataAccess_MySql;
using PNXSoft.Framework.Constants;
using System.Data;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
using ICSharpCode.SharpZipLib.Zip; /// <summary> /// 压缩数据集 /// </summary> /// <param name="ds"></param> /// <returns></returns> public static byte[] CompressDS(DataSet ds)
{ MemoryStream ms = new MemoryStream(); ZipOutputStream zos = new ZipOutputStream(ms); zos.PutNextEntry(new ZipEntry(ds.DataSetName)); BinaryFormatter bf = new BinaryFormatter(); //DataSetSurrogate dss = new DataSetSurrogate(ds); bf.Serialize(zos, ds); zos.CloseEntry(); zos.Close(); byte[] ret = ms.ToArray(); ms.Close(); return ret; } 解压数据的方法 using System;
using System.Collections.Generic;
using System.Web;
using System.Data;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
using ICSharpCode.SharpZipLib.Zip; /// <summary>
///DSCompress 的摘要说明
/// </summary>
public class DSCompress
{
public DSCompress()
{
//
//TODO: 在此处添加构造函数逻辑
//
} /// <summary>
/// 解压数据集
/// </summary>
/// <param name="byt"></param>
/// <returns></returns>
public static DataSet DecompressDS(byte[] byt)
{ MemoryStream ms = new MemoryStream(byt); BinaryFormatter bf = new BinaryFormatter(); ZipInputStream zis = new ZipInputStream(ms); zis.GetNextEntry(); DataSet ds = (DataSet)bf.Deserialize(zis); zis.Close(); ms.Close(); return ds; } }

代码没什么难度,希望可以帮助到需要的人

最新文章

  1. 开源代码:Http请求封装类库HttpLib介绍、使用说明
  2. Go 语言学习
  3. WPF上Arc Lisence的有关问题
  4. mergeSort
  5. 【jqGrid for ASP.NET MVC Documentation】.学习笔记.7.搜索过滤数据
  6. Linux下的字符集问题
  7. Codeforces Round #141 (Div. 2)
  8. DHCP工作过程详解
  9. raspberry pi 3 截图及查看
  10. A Game of Thrones(19) - Jon
  11. sql function递归
  12. 【转】CentOS 6.3(x86_64)下安装Oracle 10g R2
  13. SpringtMVC中配置 &lt;mvc:annotation-driven/&gt; 与 &lt;mvc:default-servlet-handler/&gt; 的作用与源码解析
  14. Mac上实现Python用HTMLTestRunner生成html测试报告
  15. java百度云推送
  16. AngularJS中使用$http对MongoLab数据表进行增删改查
  17. Spark学习之路 (二十八)分布式图计算系统
  18. centos7.0之vsftpd随笔
  19. 项目总结08:spring quartz 定时器Demo
  20. 【转】【Centos】安装 lnmpa 集成开发环境

热门文章

  1. Use jQuery to hide a DIV when the user clicks outside of it
  2. Android 和 PHP 之间进行数据加密传输
  3. oc-21-class对象
  4. 经典排序算法总结与实现 ---python
  5. 如何为Linux安装Go语言
  6. Python Learning
  7. html、css、js的命名规范
  8. maven-使用assembly自定义打包
  9. C# 之 HttpWebRequest类
  10. Remoting