To implement this first we need to get Ionic.Zip.dll from DotnetZIP Library for that check this link Ionic.Zip.dll or you can get it from attached downloadable code. Now you need to add that dll to your application bin folder for that check below steps
Go to Solution Explorer --> Right click on it and go to Add ASP.NET folder --> click on Bin
Now bin folder added to our application and place Ionic.Zip.dll in that folder and add another folder in your application (Right click on your application -à Select New folder) and give name as SampleFiles
Default.aspx:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Create ZIP Files in Asp.net using c#,vb.net</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:FileUpload ID="fileUpload1" runat="server" />
<asp:Button ID="btnUpload" runat="server" Text="Upload Files" onclick="btnUpload_Click" />
<asp:Button ID="btnZip" Text="Create Zip Files" runat="server" onclick="btnZip_Click" />
<asp:Label ID="lbltxt" runat="server" Font-Bold="true" ForeColor="Red" />
</div>
</form>
</body>
</html>
Default.aspx.cs:(c#)
using System;
using System.IO;
using Ionic.Zip;
// insert files in folder
protected void btnUpload_Click(object sender, EventArgs e)
{
if(fileUpload1.HasFile)
{
string filename = Path.GetFileName(fileUpload1.PostedFile.FileName);
string path = Server.MapPath("~/SampleFiles/" + filename);
fileUpload1.SaveAs(path);
lbltxt.Text = "File Uploaded Successfully";
}
}
// Zip all files from folder
protected void btnZip_Click(object sender, EventArgs e)
{
string path = Server.MapPath("~/SampleFiles/");
string[] filenames = Directory.GetFiles(path);
using (ZipFile zip = new ZipFile())
{
zip.AddFiles(filenames,"files");
zip.Save(Server.MapPath("~/samplefiles.zip"));
lbltxt.Text = "ZIP File Created Successfully";
}
}
Default.aspx.cs:(VB.NET)
Imports System.IO
Imports Ionic.Zip
Partial Class VBCode
Inherits System.Web.UI.Page
' insert files in folder
Protected Sub btnUpload_Click(ByVal sender As Object, ByVal e As EventArgs)
If fileUpload1.HasFile Then
Dim filename As String = Path.GetFileName(fileUpload1.PostedFile.FileName)
Dim path__1 As String = Server.MapPath("~/SampleFiles/" & filename)
fileUpload1.SaveAs(path__1)
lbltxt.Text = "File Uploaded Successfully"
End If
End Sub
' Zip all files from folder
Protected Sub btnZip_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim path As String = Server.MapPath("~/SampleFiles/")
Dim filenames As String() = Directory.GetFiles(path)
Using zip As New ZipFile()
zip.AddFiles(filenames, "files")
zip.Save(Server.MapPath("~/samplefiles.zip"))
lbltxt.Text = "ZIP File Created Successfully"
End Using
End Sub
End Class
Go to Solution Explorer --> Right click on it and go to Add ASP.NET folder --> click on Bin
Now bin folder added to our application and place Ionic.Zip.dll in that folder and add another folder in your application (Right click on your application -à Select New folder) and give name as SampleFiles
Default.aspx:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Create ZIP Files in Asp.net using c#,vb.net</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:FileUpload ID="fileUpload1" runat="server" />
<asp:Button ID="btnUpload" runat="server" Text="Upload Files" onclick="btnUpload_Click" />
<asp:Button ID="btnZip" Text="Create Zip Files" runat="server" onclick="btnZip_Click" />
<asp:Label ID="lbltxt" runat="server" Font-Bold="true" ForeColor="Red" />
</div>
</form>
</body>
</html>
Default.aspx.cs:(c#)
using System;
using System.IO;
using Ionic.Zip;
// insert files in folder
protected void btnUpload_Click(object sender, EventArgs e)
{
if(fileUpload1.HasFile)
{
string filename = Path.GetFileName(fileUpload1.PostedFile.FileName);
string path = Server.MapPath("~/SampleFiles/" + filename);
fileUpload1.SaveAs(path);
lbltxt.Text = "File Uploaded Successfully";
}
}
// Zip all files from folder
protected void btnZip_Click(object sender, EventArgs e)
{
string path = Server.MapPath("~/SampleFiles/");
string[] filenames = Directory.GetFiles(path);
using (ZipFile zip = new ZipFile())
{
zip.AddFiles(filenames,"files");
zip.Save(Server.MapPath("~/samplefiles.zip"));
lbltxt.Text = "ZIP File Created Successfully";
}
}
Default.aspx.cs:(VB.NET)
Imports System.IO
Imports Ionic.Zip
Partial Class VBCode
Inherits System.Web.UI.Page
' insert files in folder
Protected Sub btnUpload_Click(ByVal sender As Object, ByVal e As EventArgs)
If fileUpload1.HasFile Then
Dim filename As String = Path.GetFileName(fileUpload1.PostedFile.FileName)
Dim path__1 As String = Server.MapPath("~/SampleFiles/" & filename)
fileUpload1.SaveAs(path__1)
lbltxt.Text = "File Uploaded Successfully"
End If
End Sub
' Zip all files from folder
Protected Sub btnZip_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim path As String = Server.MapPath("~/SampleFiles/")
Dim filenames As String() = Directory.GetFiles(path)
Using zip As New ZipFile()
zip.AddFiles(filenames, "files")
zip.Save(Server.MapPath("~/samplefiles.zip"))
lbltxt.Text = "ZIP File Created Successfully"
End Using
End Sub
End Class
Comments
Post a Comment