Hi, I'm getting some pushback on my code style. I just want the raw bytes in-memory of a file in Python, for a manageable tiny dataset.
Is there anything especially wrong with the following? It's essentially the same as the answer here: https://lists.osgeo.org/pipermail/gdal-dev/2016-August/045030.html (I know it needs error checks, I just mean the bare style of how to get the task done). temp_name = "/vsimem/some.tif" from osgeo import gdal gdal.UseExceptions() ## we do something with vrt dsn = "vrt:///vsicurl/ https://github.com/cran/rgl/raw/master/inst/textures/worldsmall.png?a_ullr=-180,90,180,-90&expand=rgb " ds = gdal.Open(dsn) ## write to tif format, but using MEM gdal.Translate(temp_name, ds) ## now obtain those bytes from the GDAL virtual file f = gdal.VSIFOpenL(temp_name, 'rb') gdal.VSIFSeekL(f, 0, 2) # end size = gdal.VSIFTellL(f) gdal.VSIFSeekL(f, 0, 0) # begin ## the desired result is this data = gdal.VSIFReadL(1, size, f) ## and clean up gdal.VSIFCloseL(f) gdal.Unlink(temp_name) Cheers, Mike -- Michael Sumner Software and Database Engineer Australian Antarctic Division Hobart, Australia e-mail: mdsum...@gmail.com
_______________________________________________ gdal-dev mailing list gdal-dev@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/gdal-dev