Как сделать из нескольких файлов один? - VB

Узнай цену своей работы

Формулировка задачи:

Есть несколько файлов, надо чтобы они хранились одним файлом и программа их все прочитать. Т.е. файлы текст.тхт, имага.гиф, имага2.гиф... запихивались в все_вместе.все (можно даже без сжатия), а при нужде прога их читала... Только если можно, то по проще, как для кипетильника...

Решение задачи: «Как сделать из нескольких файлов один?»

textual
Листинг программы
Private Sub CmdCode_Click()
On Error GoTo ErrHand
Dim In1 As String
Dim In2 As String
Dim a() As Byte
Dim b() As Byte
Dim c() As Byte
Dim d() As Byte
Dim al As Long, bl As Long
Dim i As Long
Dim TempVal1 As String
'Назначаю путь куда будет упаковываться
Open App.Path & "TempConfigFile.conf" For Append As #5
Open App.Path & "PaketFiles.dll" For Input As #7 'открываю файл, в котором записаны пути нужных файлов
Open App.Path & "TempPakFile.pak" For Binary Access Write As #9
 
For i = 1 To 5000000
If EOF(7) = True Then GoTo StopHand 'Если список файлов закончился, то СТОП
Input #7, In1 'Читаю путь обрабатываемого файла
If EOF(7) = True Then GoTo StopHand
Input #7, TempVal1 'Читаю название файла
DoEvents
Text1.Text = TempVal1
 
If Err > 0 Then GoTo StopHand
al = al + FileLen(In1)
Print #5, al 'Записываем конец файла в конф. файл
Print #5, TempVal1 'Записываю название файла в конф. файл
ReDim a(FileLen(In1) - 1)
Open In1 For Binary Access Read As #1
Get #1, , a()
Close #1
MyBar1.Value = 0
If bl = 0 Then
Put #9, , a
GoTo NextWr
End If
Put #9, bl + 1, a
NextWr:
bl = al
MyBar1.Value = 99
Next i
 
StopHand:
MsgBox "Пакет удачно подготовлен!", vbInformation, "Готово!"
SaveFile.Show
frmMain.Command2.Enabled = True
Close
 
Unload frmPaket
 
Exit Sub
ErrHand:
MsgBox "Произошла ошибка #" & err & " - " & err.Description , vbCritical, "Error #" & err & vbcrlf "---" & vbcrlf & err.Description
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.133 из 5
Похожие ответы