var _ZIP = new System.IO.Compression.ZipArchive(Request.Files[].InputStream);

foreach (var element in _ZIP.Entries)
{
using (System.IO.StreamReader _ddd = new System.IO.StreamReader(element.Open()))
{
string _Text = _ddd.ReadToEnd(); } using (System.IO.BinaryReader _ddd = new System.IO.BinaryReader(element.Open()))
{
string bx = " ";
byte buffer;
buffer = r.ReadByte();
bx = buffer.ToString();
buffer = r.ReadByte();
bx += buffer.ToString(); //bx == 255216 jpg 파일
}
}
        static void Main(string[] args)
{ string str = string.Empty;
str= Console.ReadLine();
Console.WriteLine("length:" + str.Length);
str=ToZip(str);
Console.WriteLine("ToZip:" + str);
Console.WriteLine("length:" + str.Length);
str= ToUnzip(str);
Console.WriteLine("ToUnzip:" + str);
Console.WriteLine("length:" + str.Length);
Console.Read();
} static string ToZip(string _str) { string result = string.Empty;
byte[] bString = Encoding.UTF8.GetBytes(_str);
using (var msi = new System.IO.MemoryStream(bString))
using (var mso = new System.IO.MemoryStream())
{
using (var gs = new System.IO.Compression.GZipStream(mso, System.IO.Compression.CompressionMode.Compress))
{
byte[] bTemp = new byte[];
int count;
while ((count = msi.Read(bTemp, , bTemp.Length)) != )
{
gs.Write(bTemp, , count);
}
}
result= System.Convert.ToBase64String(mso.ToArray());
}
return result;
}
static string ToUnzip(string _str)
{
string result = string.Empty;
byte[] bString = System.Convert.FromBase64String(_str);
using (var msi = new System.IO.MemoryStream(bString))
using (var mso = new System.IO.MemoryStream())
{
using (var gs = new System.IO.Compression.GZipStream(msi, System.IO.Compression.CompressionMode.Decompress))
{
byte[] bTemp = new byte[];
int count;
while ((count = gs.Read(bTemp, , bTemp.Length)) != )
{
mso.Write(bTemp, , count);
}
}
result= Encoding.UTF8.GetString(mso.ToArray());
} return result;
}

Zip 压缩问题件,获取真实扩展名的更多相关文章

  1. PHP获取文件扩展名的多种方法

    PHP获取文件扩展名的N种方法. 第1种方法: function get_extension($file) { substr(strrchr($file, '.'), 1): } 第2种方法: fun ...

  2. C#根据byte前两位获取图片扩展名

    C#根据byte前两位获取图片扩展名 /// <summary> /// 根据byte前两位获取图片扩展名 /// </summary> /// <param name= ...

  3. python获取文件扩展名的方法(转)

    主要介绍了python获取文件扩展名的方法,涉及Python针对文件路径的相关操作技巧.具体实现方法如下: 1 2 3 4 import os.path def file_extension(path ...

  4. python获取文件扩展名的方法

    主要介绍了python获取文件扩展名的方法,涉及Python针对文件路径的相关操作技巧 import os.path def file_extension(path): ] print file_ex ...

  5. PHP中获取文件扩展名的N种方法

    PHP中获取文件扩展名的N种方法 从网上收罗的,基本上就以下这几种方式: 第1种方法:function get_extension($file){substr(strrchr($file, '.'), ...

  6. PHP获取文件扩展名五种以上的方法和注释

    在PHP面试中或者考试中会有很大几率碰到写出五种获取文件扩展名的方法,下面是我自己总结的一些方法 $file = ‘需要进行获取扩展名的文件.php’; //第一种,根据.拆分,获取最后一个元素的值f ...

  7. PHP中获取文件扩展名

    function get_extension($file) { return substr(strrchr($file, '.'), 1) ; } function get_extension($fi ...

  8. PHP获取文件扩展名的五种方式

    这是我应聘实习时遇到的一道笔试题: 使用五种以上方式获取一个文件的扩展名. 要求:dir/upload.image.jpg,找出 .jpg 或者 jpg , 必须使用PHP自带的处理函数进行处理,方法 ...

  9. PHP 获取文件扩展名的五种方式

    第一种 substr(strrchr("http://www.xxx.com/public/abc.jpg", '.'), 1); string strrchr('string', ...

随机推荐

  1. Educational Codeforces Round 6 F. Xors on Segments 暴力

    F. Xors on Segments 题目连接: http://www.codeforces.com/contest/620/problem/F Description You are given ...

  2. JS对象和数组

    /* 数组和对象 [JavaScript 权威指南 第五版] */ /* 对象: 是一个无序属性集合, 每个属性都有自己的名字和值 */ /* 创建对象简单方法, 对象直接量 */ var obj = ...

  3. GMT-CMSP系统维护步骤整理

    一.关闭前端各服务1.北京代理,韩国代理节点nginx/etc/init.d/nginx stop2.关闭WEB1,WEB2 NGINX和PHPpkill nginx && pkill ...

  4. GridControl事件

    private void gridView1_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventA ...

  5. 常用 U-boot命令详解

    转:http://www.360doc.com/content/10/0827/13/496343_49168699.shtml 获取帮助环境变量与相关指令U-boot的使用网络命令Nand Flas ...

  6. [转]SSIS Recordset Destination

    本文转自:http://www.sqlis.com/sqlis/post/Shredding-a-Recordset.aspx Doing what to a recordset? Shredding ...

  7. 理解PHP的变量,值与引用的关系

    --- title: 理解PHP的变量,值与引用的关系 createdDate: 2015-03-11 category: php --- PHP的变量与C++中的变量是两种截然不容的概念.如果没有理 ...

  8. jTemplates模板学习笔记

    1.jTemplates工作方式   1)setTemplateElement:指定可处理的模板对象 2)processTemplate:对模板化的对象进行数据处理 2.语法解析   1)jTempl ...

  9. Spark Streaming no receivers彻底思考

    数据接入Spark Streaming的二种方式:Receiver和no receivers方式 建议企业级采用no receivers方式开发Spark Streaming应用程序,好处: 1.更优 ...

  10. Converter -> public static int ToInt32(double value) 你用对了么?

    Convert.ToInt32()  是我们经常使用的方法,但如果我们写如下的代码,能确定它的输出值么? var x = 7.5; Console.WriteLine(7.5 + ": &q ...