Imports System.IO
Module Module1
Sub Main()
Dim ZHUOMIAN = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
For I = 0 To 10
Dim RET = CutFile($"{ZHUOMIAN}\1.mp3", 1024 * 1024)
CombineFiles(RET, "1.mp3")
Next
Console.WriteLine("HEBINGOK")
Console.Read()
End Sub
’‘’分割文件
Private Function CutFile(ByVal filePath As String, ByVal cutFileSize As Integer) As List(Of String)
Dim result As New List(Of String) '返回文件路径数组
Dim cutFileStream As FileStream = New FileStream(filePath, FileMode.Open)
Dim cutFileReader As BinaryReader = New BinaryReader(cutFileStream)
Dim cutBytes As Byte()
Dim fileCount As Integer = Convert.ToInt32(Math.Ceiling(CDbl(cutFileStream.Length) / cutFileSize))
For i As Integer = 0 To fileCount - 1
Dim cutFileName As String = i & ".temp"
result.Add(cutFileName)
Dim tempStream As FileStream = New FileStream(cutFileName, FileMode.OpenOrCreate)
Dim tempWriter As BinaryWriter = New BinaryWriter(tempStream)
cutBytes = cutFileReader.ReadBytes(cutFileSize)
tempWriter.Write(cutBytes)
tempWriter.Close()
tempStream.Close()
Next
cutFileReader.Close()
cutFileStream.Close()
Return result
End Function
Private Sub CombineFiles(ByVal filePaths As List(Of String), ByVal combineFile As String)
Dim CombineStream As FileStream = New FileStream(combineFile, FileMode.OpenOrCreate)
Dim CombineWriter As BinaryWriter = New BinaryWriter(CombineStream)
For Each file As String In filePaths
Dim fileStream As FileStream = New FileStream(file, FileMode.Open)
Dim fileReader As BinaryReader = New BinaryReader(fileStream)
Dim TempBytes As Byte() = fileReader.ReadBytes(CInt(fileStream.Length))
CombineWriter.Write(TempBytes)
fileReader.Close()
fileStream.Close()
Next
CombineWriter.Close()
CombineStream.Close()
End Sub
End Module
VB.net 文件切片和合并算法
猜你喜欢
转载自blog.csdn.net/aa326358942/article/details/104325827
今日推荐
周排行