Từ 1 tới 9 trên tổng số 9 kết quả

Đề tài: Cách tạo và giải nén trong C Sharp như thế nào?

  1. #1
    Ngày gia nhập
    03 2008
    Bài viết
    4

    Mặc định Cách tạo và giải nén trong C Sharp như thế nào?

    cho mình hỏi về cách tạo và giải nén trong C Sharp voi,cám ơn các bạn nhiều

  2. #2
    Ngày gia nhập
    10 2007
    Nơi ở
    Gameloft studio
    Bài viết
    175

    Có hai lựa chọn để nén file trong C#: GZip và Deflace.
    Bạn thử tìm hiểu trong lớp sau: System.IO.Compression
    Đây là code một bài "nén file", bạn xem và thử tìm cách "giải nén" thế nào, code thử nha.
    Có gì thắc mắc, mình hỗ trợ bạn.
    Visual C# Code:
    1. using System;
    2. using System.Collections.Generic;
    3. using System.Text;
    4. using System.IO.Compression;
    5. using System.IO;
    6.  
    7. namespace Compression
    8. {
    9.     class Program
    10.     {
    11.         static void CompressFile(string inFileName, string outFileName)
    12.         {
    13.             FileStream sourceFile=File.OpenRead(inFileName);
    14.             FileStream destFile = File.Create(outFileName);
    15.             GZipStream compress = new GZipStream(destFile, CompressionMode.Compress);
    16.             int thebyte= sourceFile.ReadByte();
    17.             while(thebyte!=-1)
    18.             {
    19.                 compress.WriteByte((byte)thebyte);
    20.                 thebyte=sourceFile.ReadByte();
    21.             }
    22.         }                        
    23.      
    24.         static void Main(string[] args)
    25.         {
    26.             string inFile=@"C:\a.txt";
    27.             string outFile = @"C:\a.zip";
    28.             CompressFile(inFile,outFile);
    29.         }
    30.     }
    31. }
    Không biết ghi gì luôn ...

  3. #3
    Ngày gia nhập
    11 2007
    Bài viết
    48

    nếu mình muốn nén nhiều file và nhiều thư mục cùng một lúc
    thì phài làm cách nào vậy bạn

  4. #4
    Ngày gia nhập
    04 2008
    Bài viết
    8

    Chào các bạn,
    Mình gặp một tình huống như sau:

    1. File sau khi nén có kích thước lớn hơn trước
    - Trước khi nén là 79 KB
    - Sau khi nén là 115 KB
    2. Sau khi giải nén thì không mở được
    - File mình thử có dạng PDF

    PHP Code:
    using System.IO;
    using System.IO.Compression;
             
                
    // Nén file

                
    FileStream fromFile File.OpenRead("c:\\1.pdf");
                
    FileStream toFile File.Create("c:\\1.zaz");

                
    GZipStream gZipStream = new GZipStream(toFileCompressionMode.Compress);

                
    int mybyte fromFile.ReadByte();
                while (
    mybyte != -1)
                {
                    
    gZipStream.WriteByte((byte)mybyte);
                    
    mybyte fromFile.ReadByte();
                }
                
    Console.WriteLine("Nen thanh cong");
                
    gZipStream.Close();


                
    // Giải nén file

                
    fromFile File.OpenRead("c:\\1.zaz");
                
    toFile File.Create("c:\\2.pdf");

                
    gZipStream = new GZipStream(fromFileCompressionMode.Decompress);

                
    mybyte gZipStream.ReadByte();
                while (
    mybyte!=-1)
                {
                    
    toFile.WriteByte((byte)mybyte);
                    
    mybyte gZipStream.ReadByte();
                }
                
    gZipStream.Close();

                
    Console.Write("Giai nen thanh cong");
                
    Console.ReadLine(); 
    Mong các bạn xem giúp

  5. #5
    Ngày gia nhập
    04 2008
    Bài viết
    8

    Mặc định Đã đọc được file sau khi giải nén

    bằng đoạn code sau :
    PHP Code:
    string compressedFile "c:\\1.zip";
                
    string originalFileName "d:\\1.pdf";

                
    using (FileStream zipFile = new FileStream(compressedFileFileMode.OpenFileAccess.Read))
                
    using (FileStream originalFile = new FileStream(originalFileNameFileMode.CreateFileAccess.Write))
                
    using (GZipStream alg = new GZipStream(zipFileCompressionMode.Decompress))
                {
                    while (
    true)
                    {
                        
    // Reading 100bytes by 100bytes
                        
    byte[] buffer = new byte[100];
                        
    // The Read() method returns the number of bytes read
                        
    int bytesRead alg.Read(buffer0buffer.Length);

                        
    originalFile.Write(buffer0buffer.Length);

                        if (
    bytesRead != buffer.Length)
                            break;
                    }
                } 
    Nhưng file sau khi nén vẫn lớn hơn.

  6. #6
    Ngày gia nhập
    03 2011
    Bài viết
    8

    Mặc định Cách tạo và giải nén trong C Sharp như thế nào?

    Những file có size nhỏ khoảng vài KB vài trăm KB thì khi nén file được nén luôn luôn có kích thước lớn hơn bạn ah

  7. #7
    Ngày gia nhập
    01 2012
    Nơi ở
    localhost
    Bài viết
    140

    Trích dẫn Nguyên bản được gửi bởi tumy1 Xem bài viết
    Những file có size nhỏ khoảng vài KB vài trăm KB thì khi nén file được nén luôn luôn có kích thước lớn hơn bạn ah
    Bạn chắc hok?
    Rẹt rẹt..

  8. #8
    Ngày gia nhập
    04 2011
    Bài viết
    10

    mấy anh ơi cho em hỏi là khi giải nén thì làm sao biết được file đó có đuôi gì để giải nén ra đúng ạ!

  9. #9
    Ngày gia nhập
    03 2011
    Bài viết
    8

    Trích dẫn Nguyên bản được gửi bởi sim Xem bài viết
    Bạn chắc hok?
    mình không biết các bạn sao.... nhưng mình làm về Huffman bên C++ rồi giờ qua C# làm bằng thư viện có sẵn... file sau khi nén xong có size lớn hơn

Các đề tài tương tự

  1. 08.66783446.).(.sửa máy giặt Sharp tại Tphcm,Dv tận nhà]]^[[ .).(.sửa máy giặt Sharp tại Tphcm,Dv tận nhà]]^[[
    Gửi bởi thanhcool20 trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 17-05-2012, 11:32 AM
  2. 08.36009936.O)(o.Trung tâm sửa máy giặt SHARP tại TPHCM**|+|**dịch vụ sửa máy giặt chuyên nghiệp tại nhà.
    Gửi bởi thanhcool20 trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 16-05-2012, 04:16 PM
  3. 08.66783446.O_o.Trung tâm bảo hành máy giặt SHARP tại TPHCM**|+|**dịch vụ sửa máy giặt chuyên nghiệp tại nhà.
    Gửi bởi thanhcool20 trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 16-05-2012, 04:13 PM
  4. 08.66783446.O~o.Trung tâm bảo hành máy giặt SHARP tại TPHCM**|_|**dịch vụ sửa máy giặt chuyên nghiệp tại nhà.
    Gửi bởi thanhcool20 trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 16-05-2012, 03:50 PM
  5. Cách đọc random 1 dòng trong text file từ C sharp như thế nào?
    Gửi bởi chuyenhatpop trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 7
    Bài viết cuối: 19-08-2010, 08:33 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn