example_01.bmx 752 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. SuperStrict
  2. Framework Archive.Zstd
  3. Import Archive.Raw
  4. Import BRL.TextStream
  5. Import BRL.StandardIO
  6. ' Write
  7. Local wa:TWriteArchive = New TWriteArchive
  8. wa.SetFormat(EArchiveFormat.RAW)
  9. wa.AddFilter(EArchivefilter.ZSTD)
  10. wa.SetCompressionLevel(20)
  11. wa.Open("data.zstd")
  12. wa.AddEntry("warandpeace.txt")
  13. wa.Close()
  14. ' Read
  15. Local ra:TReadArchive = New TReadArchive
  16. ra.SetFormat(EArchiveFormat.RAW)
  17. ra.AddFilter(EArchivefilter.ZSTD)
  18. ra.Open("data.zstd")
  19. Local entry:TArchiveEntry = New TArchiveEntry
  20. While ra.ReadNextHeader(entry) = ARCHIVE_OK
  21. Print "File : " + entry.Pathname()
  22. Print "Size : " + entry.Size()
  23. Local s:String = LoadText(ra.DataStream())
  24. Print "String size : " + s.Length
  25. Print "First n chars : " + s[0..17]
  26. Print
  27. Wend
  28. ra.Free()