Can I Please have a zip extract code?
BlitzMax Forums/BlitzMax Programming/Can I Please have a zip extract code?
| ||
I look everywhere I really need a code that extracts all files from a zip file to current game dir. gzip only does one file. |
| ||
koriolis.zipstream will let you access files and folders inside a zipfile: https://github.com/maxmods/koriolis.mod |
| ||
Building test[ 42%] Compiling:bmxsupport.c [ 43%] Compiling:ioapi.c [ 44%] Compiling:unzip.c [ 45%] Compiling:zip.c [ 82%] Processing:bufferedstream.bmx [ 85%] Compiling:bufferedstream.bmx.release.win32.x64.c [ 87%] Archiving:bufferedstream.release.win32.x64.a [ 95%] Processing:zipstream.bmx C:/BlitzMax/MinGW32/bin/ar.exe: creating C:/BlitzMax/mod/koriolis.mod/bufferedstream.mod/bufferedstream.release.win32.x64.a [ 96%] Compiling:zipstream.bmx.release.win32.x64.c [ 97%] Archiving:zipstream.release.win32.x64.a [ 98%] Processing:test.bmx C:/BlitzMax/MinGW32/bin/ar.exe: creating C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a [ 99%] Compiling:test.bmx.gui.release.win32.x64.c [100%] Linking:test.exe C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x18): undefined reference to `koriolis_zipstream_TZipStream_read_file_func' C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x38): undefined reference to `koriolis_zipstream_TZipStream_write_file_func' C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x55): undefined reference to `koriolis_zipstream_TZipStream_tell_file_func' C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x68): undefined reference to `koriolis_zipstream_TZipStream_seek_file_func' C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x1): undefined reference to `koriolis_zipstream_TZipStream_open_file_func' C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x81): undefined reference to `koriolis_zipstream_TZipStream_close_file_func' C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x91): undefined reference to `koriolis_zipstream_TZipStream_testerror_file_func' Build Error: Failed to link C:\Extractor\test.exe Process complete it doesn't work! |
| ||
Are you using the stock blitzmax, or blitzmax NG? If NG, then the above should work. If stock, then try this one: http://www.xlsior.net/temp/koriolis.mod.zip If it still fails, you may need to rebuild your modules. |
| ||
BMX NG it still fails I couldn't find any other examples of extracting zip files source Import koriolis.zipstream SuperStrict Framework brl.standardio Import koriolis.zipstream Local books:String[] = ["LegendsOfTheGods.txt", "MythsAndLegendsOfAncientGreeceAndRome.txt", "MythsAndLegendsOfChina.txt"] For Local book:String = EachIn books Local text:String = LoadText("zip::pack.zip//" + book) Print book Print " Size : " + text.length Print "" Next Building test [100%] Linking:test.exe C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x18): undefined reference to `koriolis_zipstream_TZipStream_read_file_func' C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x38): undefined reference to `koriolis_zipstream_TZipStream_write_file_func' C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x55): undefined reference to `koriolis_zipstream_TZipStream_tell_file_func' C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x68): undefined reference to `koriolis_zipstream_TZipStream_seek_file_func' C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x1): undefined reference to `koriolis_zipstream_TZipStream_open_file_func' C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x81): undefined reference to `koriolis_zipstream_TZipStream_close_file_func' C:/BlitzMax/mod/koriolis.mod/zipstream.mod/zipstream.release.win32.x64.a(bmxsupport.c.release.win32.x64.o):bmxsupport.c:(.text+0x91): undefined reference to `koriolis_zipstream_TZipStream_testerror_file_func' Build Error: Failed to link C:\Extractor\test.exe Process complete |