溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

VB.NET中怎么壓縮ZIP文件

發(fā)布時(shí)間:2021-07-19 16:11:02 來(lái)源:億速云 閱讀:854 作者:Leah 欄目:編程語(yǔ)言

今天就跟大家聊聊有關(guān)VB.NET中怎么壓縮ZIP文件,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

VB.NET壓縮ZIP文件代碼示例:

  1. Public Function Decompress()
    Function Decompress
    (ByVal algo As String, ByVal 
    data() As Byte) As Byte()  

  2. Try  

  3. Dim sw As New Stopwatch  

  4. '---復(fù)制數(shù)據(jù)(壓縮的)到ms---  

  5. Dim ms As New MemoryStream(data)  

  6. Dim zipStream As Stream = Nothing 

  7. '---開(kāi)始秒表---  

  8. sw.Start()  

  9. '---使用存儲(chǔ)在ms中的數(shù)據(jù)解壓---  

  10. If algo = "Gzip" Then  

  11. zipStream = New GZipStream(ms, 
    CompressionMode.Decompress)  

  12. ElseIf algo = "Deflate" Then  

  13. zipStream = New DeflateStream(ms, 
    CompressionMode.Decompress, True)  

  14. End If  

  15. '---用來(lái)存儲(chǔ)解壓的數(shù)據(jù)---  

  16. Dim dc_data() As Byte  

  17. '---解壓的數(shù)據(jù)存儲(chǔ)于zipStream中;   

  18. '把它們提取到一個(gè)字節(jié)數(shù)組中---  

  19. dc_data = RetrieveBytesFromStream
    (zipStream, data.Length)  

  20. '---停止秒表---  

  21. sw.Stop()  

  22. lblMessage.Text = "Decompression 
    completed. Time spent: "
     & sw.
    ElapsedMilliseconds & "ms" & _  

  23. ", Original size: " & dc_data.Length  

  24. Return dc_data  

  25. Catch ex As Exception  

  26. MsgBox(ex.ToString)  

  27. Return Nothing  

  28. End Try  

  29. End Function  

  30. Public Function RetrieveBytes
    FromStream()Function Retrieve
    BytesFromStream( _  

  31. ByVal stream As Stream, ByVal 
    bytesblock As Integer) As Byte()  

  32. '---從一個(gè)流對(duì)象中檢索字節(jié)---  

  33. Dim data() As Byte  

  34. Dim totalCount As Integer = 0 

  35. Try  

  36. While True  

  37. '---逐漸地增加數(shù)據(jù)字節(jié)數(shù)組-的大小--  

  38. ReDim Preserve data(totalCount 
    + bytesblock)  

  39. Dim bytesRead As Integer = 
    stream.Read(data, totalCount, bytesblock)  

  40. If bytesRead = 0 Then  

  41. Exit While  

  42. End If  

  43. totalCount += bytesRead  

  44. End While  

  45. '---確保字節(jié)數(shù)組正確包含提取的字節(jié)數(shù)---  

  46. ReDim Preserve data(totalCount - 1)  

  47. Return data  

  48. Catch ex As Exception  

  49. MsgBox(ex.ToString)  

  50. Return Nothing  

  51. End Try  

  52. End Function 

看完上述內(nèi)容,你們對(duì)VB.NET中怎么壓縮ZIP文件有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI