任意文件的分割與合並,用VB寫了兩個函數:
文件分割
''''strFileFromPath參數是要分割的文件路徑和名稱
''''intFileDivNum參數是文件要分割的份數
''''strDirToPath參數是分割成幾個文件後的存放路徑,只包含文件夾名稱,文件名由函數自動生成
Private Function FileDivision(ByVal strFileFromPath As String, ByVal intFileDivNum As Integer, ByVal strDirToPath As String) As Boolean
On Error GoTo aa
FileDivision = False
Dim i As Integer, L As Long
Dim bytBuffer() As Byte
Dim lngFileNum As Long
If intFileDivNum = 0 Then
MsgBox "請輸入文件分割份數!", vbInformation, "提示"
Exit Function
End If
lngFileNum = FileLen(strFileFromPath) ''''文件總字節數
If Dir(strFileFromPath, vbNormal + vbReadOnly) <> Empty Then
If lngFileNum = 0 Then
MsgBox "文件打不開或無內容!", vbInformation, "提示"
Exit Function
End If
If Right(strDirToPath, 1) <> "\" Then
strDirToPath = strDirToPath & "\"
End If
Dim FileNumber
FileNumber = FreeFile '' 取得未使用的文件號。
ReDim bytBuffer(lngFileNum - 1) ''''文件總緩存區
Open strFileFromPath For Binary As #FileNumber
Get #FileNumber, 1, bytBuffer
Close #FileNumber
Dim TempBuffer() As Byte ''''文件每份緩存區
Dim lngFileNumHalf As Long ''''文件平均字節數
Dim lngTemp As Long ''''文件每份大小
Dim lngTempSum As Long ''''文件每份第一字節在總緩存區中的位置