首页 > 编程语言 >c# 上传压缩包 解压,遍历文件夹和文件

c# 上传压缩包 解压,遍历文件夹和文件

时间:2024-03-11 18:55:34浏览次数:26  
标签:解压 valueLen string c# pathFile 文件夹 new HFC 压缩包

<body>
<form id="form1" runat="server">
<div>
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:button ID="Button1" runat="server" text="上传" OnClick="Button1_Click" />
</div>
</form>
</body>

引用 SharpCompress.dll

下载地址https://download.csdn.net/download/weixin_42020830/87737306?spm=1001.2014.3001.5503

protected void Button1_Click(object sender, EventArgs e)
{

//获取客服端上载文件的集合
HttpFileCollection HFC = System.Web.HttpContext.Current.Request.Files;
//将上传压缩包复制到指定路径
string zipPath = Request.MapPath("~/UploadZipFile/" + Guid.NewGuid().ToString() + "");
if (!Directory.Exists(zipPath))//判断文件夹是否存在
{
Directory.CreateDirectory(zipPath);//不存在则创建文件夹
}
string filePath = Path.Combine(zipPath, HFC[0].FileName);
HFC[0].SaveAs(filePath);
//解压文件夹存放路径
string newGuid = Guid.NewGuid().ToString();
string pathFile = Request.MapPath("~/UploadFile/" + newGuid + "");
if (!Directory.Exists(pathFile))//判断文件夹是否存在
{
Directory.CreateDirectory(pathFile);//不存在则创建文件夹
}
string[] pathLen = pathFile.Split(new char[] { '\\' }, StringSplitOptions.RemoveEmptyEntries);
//解压压缩包
string[] valueLen = HFC[0].FileName.Split(new char[] { '.' }, StringSplitOptions.RemoveEmptyEntries);
string lenValue = valueLen[valueLen.Length - 1];
string targetFile = zipPath + "\\" + HFC[0].FileName;

using (Stream stream =System.IO.File.OpenRead(targetFile))
{
var reader = ReaderFactory.Open(stream);
while (reader.MoveToNextEntry())
{
if (!reader.Entry.IsDirectory)
{
reader.WriteEntryToDirectory(pathFile, new ExtractionOptions { ExtractFullPath = true, Overwrite = true });
}
}
}
//遍历文件
public void getFileName( string path, int pathLen)
{
string[] valueLen = path.Split(new char[] { '\\' }, StringSplitOptions.RemoveEmptyEntries);
DirectoryInfo root = new DirectoryInfo(path);
string recidFile = Guid.NewGuid().ToString("N").Substring(0, 25);
string name = valueLen[valueLen.Length - 1];//文件夹名
foreach (FileInfo f in root.GetFiles())
{
Console.WriteLine(f.Name);
}

}

标签:解压,valueLen,string,c#,pathFile,文件夹,new,HFC,压缩包
From: https://www.cnblogs.com/jigeqiu/p/18066819

相关文章

  • ElasticSearch架构介绍及原理解析
    前言在当今大数据时代,数据的快速增长使得有效地管理、检索和分析数据成为企业发展的关键。Elasticsearch(以下简称ES)作为一种开源的分布式搜索和分析引擎,在这个领域中扮演着重要的角色。它不仅仅只是全文搜索,还支持结构化搜索、数据分析、复杂的语言处理、地理位置和对象间关联关......
  • 你是怎么理解ES6中 Decorator 的?使用场景?
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助一、介绍Decorator,即装饰器,从名字上很容易让我们联想到装饰者模式简单来讲,装饰者模式就是一种在不改变原类和使用继承的情况下,动态地扩展对象功能的设计理论。ES6中Decorator功能亦如此,其本质也不是什么高大上的......
  • C++ 雇佣兵
    描述雇佣兵的体力最大值为M,初始体力值为0、战斗力为N、拥有X个能量元素。当雇佣兵的体力值恰好为M时,才可以参加一个为期M天的战斗期,战斗期结束体力值将为0。在同一个战斗期内,雇佣兵每连续战斗n天,战斗力就会上升1点,n为当前战斗期开始时的战斗力。一个战斗期结束后,雇佣兵需要用若......
  • c# 判断图片、pdf是A0、A1、A2、A3、A4
    //("A0841*1189(mm)999949");//("A1594*841(mm)499554");//("A2420*594(mm)249485");//("A3297*420(mm)124740");//("A4210*297(mm)62370");//("B3353*500(mm)176500");//("B4250*353(mm)8825......
  • langchain-chat
    debugstartup.py:454"/root/pyenv/bin/streamlit"模型配置路径-替换模型startup.py:688config=get_model_worker_config(model_name)model_config.py找到模型加载代码fastchat库支持的模型FastChat/docs/model_support.mdatmain·lm-sys/FastChat·GitHubstartup.p......
  • RC4算法:流密码算法的经典之作
    一、RC4算法的起源与演变RC4算法是由著名密码学家RonRivest在1987年设计的一种流密码算法,其名字来源于RivestCipher4。RC4算法简单高效,被广泛应用于数据加密和网络安全领域。尽管RC4算法在早期被广泛使用,但随着时间的推移,一些安全性问题逐渐暴露,导致其在一些场景下被取代......
  • SVTB SRAMC - 2
    内容写验证计划需要参照designspecAHB-SRAMC功能验证计划SVTB架构图验证平台目录结构ahb_sramc_svtbdoc-文档rtl-dutverif-验证代码envagentsimtbtest如何编写SVTBMakefilefilelistSVTBTOPsvtb:1.根据spec......
  • ESP32CAM使用Quirc识别二维码并连接WIFI
    ESP32CAM使用Quirc识别二维码并连接WIFI网上有教程,但是是要做出来很难,或者说做出来报错识别不了。前提:搭建好ESP-IDF环境CAMERA能成功初始化此处用的二维码识别库是用的quirc,如下这个和Github下载的差不多,加了个CMakeList,我会把这个传到我的Github上,感兴趣去下载Lesterbor/E......
  • 如何利用cps推广进行网络兼职?
    如今的互联网发展很快、变革很大,从最早用免费空间做个人主页,到后来购买虚拟主机做个人网站,到后来的VPS主机和独立服务器,直到现在一直使用云服务器。我经历了早期互联网的萌芽时期,也错过了很多互联网的机遇。从最早靠传统广告联盟盈利,到后来做包月付费广告。直到2019年接触了解cps......
  • The Best Car Diagnostic Tool Among Diagnostic and Testing Tools
    Inthismodernera,carshavebecomeanessentialpartofourlives.However,likeanyothermachine,theyarepronetobreakdownsandmalfunctions.Whenfacedwithcartroubles,itiscrucialtohavetherightdiagnosticandtestingtoolsatyourdisposa......