Popular Posts
ListSelectionListener & ItemListener import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.Toolkit; import java.awt.event.ItemEvent; import java.awt.event.ItemL... netbean shortcut Ctrl + F:尋找 F3:尋找下一個字串 Ctrl + G:跳到第 N 行 Ctrl + H:取代 Tab:增加縮排 Shift + Tab:減少縮排 Ctrl + E:刪除一行 Ctrl + Shift + I:修正 import 項目 Alt + Ent... Capture response output stream using HttpModule using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Web; namespace TestWebA...
Blog Archive
Stats
SharpZipLib sample
ICSharpCode.SharpZipLib : version 0.85.4.369
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ICSharpCode.SharpZipLib.Zip;
using System.IO;

namespace ConsoleApplication
{
    class UnzipSample
    {
        public static void unzip(string fileName, string targetPath)
        {
            using (ZipInputStream s = new ZipInputStream(File.OpenRead(fileName)))
            {
                ZipEntry theEntry;
                while ((theEntry = s.GetNextEntry()) != null)
                {
                    string directoryName = Path.GetDirectoryName(theEntry.Name);
                    string zipFile = Path.GetFileName(theEntry.Name);

                    if (directoryName.Length > 0)
                    {
                        Directory.CreateDirectory(string.Format(@"{0}\{1}", targetPath, directoryName));
                    }

                    if (zipFile != string.Empty)
                    {
                        using (FileStream streamWriter = File.Create(string.Format(@"{0}\{1}\{2}", targetPath, directoryName, zipFile)))
                        {
                            int size = 2048;
                            byte[] data = new byte[2048];
                            while ((size = s.Read(data, 0, data.Length)) > 0)
                            {
                                streamWriter.Write(data, 0, size);
                            }
                        }
                    }
                }
            }
        }
    }
}