Jump to content

[Resolvido] Dividir ficheiros .zip / .rar


Andrepereira9
 Share

Recommended Posts

À falta de melhor, estou a copiar o ficheiro .rar, e a cada mega copiado, fecho o ficheiro e crio outro novo, com outro nome, e depois é só voltar a fazer o inverso. Copiar as metades para um só  🙂   🙂

Dividir

Dim num_total As Integer = 0
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        Dim sReader As New IO.FileStream("C:\teste\teste.rar", IO.FileMode.Open)
        Dim len As Long = sReader.Length - 1
        Dim buffer(1048576) As Byte
        Dim bytesread As Integer
        While (sReader.Position < len)
            bytesread = (sReader.Read(buffer, 0, 1048576))
            If bytesread >= 1048576 Then
                Dim sWriter As New IO.FileStream("C:\teste2\teste" + num.ToString + ".rar", IO.FileMode.Create)
                MsgBox(bytesread.ToString / 1024)
                sWriter.Write(buffer, 0, bytesread)
                Application.DoEvents()
                num += 1
                sWriter.Flush()
                sWriter.Close()
            Else
                Dim sWriter As New IO.FileStream("C:\teste2\teste" + num.ToString + ".rar", IO.FileMode.Create)
                MsgBox(bytesread.ToString / 1024)
                sWriter.Write(buffer, 0, bytesread)
                Application.DoEvents()
                sWriter.Flush()
                sWriter.Close()
            End If
        End While
        sReader.Close()
End Sub

Voltar a reconstruir o ficheiro

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
        Dim sWriter As New IO.FileStream("C:\teste2\teste.rar", IO.FileMode.Create)
        For i As Integer = 0 To num_total
            Dim sReader As New IO.FileStream("C:\teste2\teste" + i.ToString + ".rar", IO.FileMode.Open)
            Dim len As Long = sReader.Length - 1
            Dim buffer(1048576) As Byte
            Dim bytesread As Integer
            While sReader.Position < len
                bytesread = (sReader.Read(buffer, 0, 1048576))
                MsgBox(bytesread.ToString / 1024)
                sWriter.Write(buffer, 0, bytesread)
                Application.DoEvents()
            End While
        Next
End Sub

A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Link to comment
Share on other sites

Já estive a vr esse projecto. Alias eu já usava isso para criar os ficheiros .zip. So que não sei é como é que posso fazer para os dividir em ficheiros em partes iguais.

Não te esqueças que só foi adicionado na ultima versão, é essa que estás a usar?

Matraquilhos para Android.

Gratuito na Play Store.

https://play.google.com/store/apps/details?id=pt.bca.matraquilhos

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.