GDALOpenEx
GDALDatasetH GDALOpenEx(const char *pszFilename,
unsigned int nOpenFlags,
const char *const *papszAllowedDrivers, const char *const *papszOpenOptions,
const char *const *papszSiblingFiles)
參數意義:
主要是前兩項,后面三項默認設置為空即可
pszFilename – 要訪問的文件的名稱。在特殊驅動程序的情況下,這可能不是指物理文件,而是包含有關驅動程序如何訪問數據集的信息。它應該是 UTF-8 編碼。
nOpenFlags-GDAL_OF_標志的組合,可以通過邏輯或運算符進行組合。
① 驅動程序種類: GDAL_OF_RASTER用于柵格驅動,GDAL_OF_VECTOR用于矢量驅動,GDAL_OF_GNM用于地理網絡模型驅動。如果沒有指定任何一個值,則隱含所有種類。
②訪問模式: GDAL_OF_READONLY(獨占)或GDAL_OF_UPDATE。
③共享模式:GDAL_OF_SHARED。如果設置了,它允許與其他設置了GDAL_OF_SHARED的調用者共享一個數據集的GDALDataset句柄。特別是,如果GDALOpenEx()是從同一線程調用,它將首先查詢其當前打開和共享的GDALDataset的列表,如果其中一個數據集的GetDescription()名稱與傳遞給GDALOpenEx()的pszFilename完全匹配,它將被引用并返回。
papszAllowedDrivers-NULL表示考慮所有的候選驅動,或者是一個以NULL結尾的字符串列表,其中包含必須考慮的驅動短名稱。
papszOpenOptions-NULL,或者一個以NULL結尾的字符串列表,包含傳遞給候選驅動的開放選項。所有驅動程序都有一個選項,OVERVIEW_LEVEL=level,用于選擇數據集的特定概覽級別。級別索引從0開始。 級別號可以以 "only "為后綴,指定只有這個概覽級別必須可見,而不是子級別。默認情況下,打開的選項會被驗證,如果選項不被識別,會發出警告。在某些情況下,這可能是不可取的(例如,當不知道哪個驅動程序將打開文件時),所以特殊的打開選項VALIDATE_OPEN_OPTIONS可以被設置為NO,以避免這種警告。另外,從GDAL 2.1開始,一個選項的名字前面可以加上@字符,表示如果驅動程序沒有聲明這個選項,它可能不會引起警告。
papszSiblingFiles-NULL,或者一個以NULL結尾的字符串列表,這些字符串是主文件名的輔助性文件名。如果傳遞NULL,將對文件系統進行探測。

浙公網安備 33010602011771號