example_02.bmx 835 B

12345678910111213141516171819202122232425262728293031323334353637
  1. SuperStrict
  2. Framework Archive.GZip
  3. Import Archive.Pax
  4. Import brl.standardio
  5. Local wa:TWriteArchive = New TWriteArchive
  6. wa.SetFormat(EArchiveFormat.PAX)
  7. wa.AddFilter(EArchiveFilter.GZIP)
  8. wa.Open("data.tar.gz")
  9. wa.AddEntry("testdata.txt", "files/testdata.txt")
  10. wa.AddEntry("테스트_데이터.txt", "files/테스트_데이터.txt")
  11. wa.AddEntry("", "empty", 0, 0, EArchiveFileType.Dir)
  12. wa.Close()
  13. Local entry:TArchiveEntry = New TArchiveEntry
  14. Local ra:TReadArchive = New TReadArchive
  15. ra.SetFormat(EArchiveFormat.PAX)
  16. ra.AddFilter(EArchiveFilter.GZIP)
  17. ra.Open("data.tar.gz")
  18. While ra.ReadNextHeader(entry) = ARCHIVE_OK
  19. Print "File : " + entry.Pathname()
  20. Print "Size : " + entry.Size()
  21. Local s:String = LoadText(ra.DataStream())
  22. Print "String size : " + s.Length
  23. Print "First n chars : " + s[0..17]
  24. Print
  25. Wend
  26. ra.Free()