C# GDAL 读取GDB、MDB(二者获取加载代码是一致的)

  • 1 加载扩展
 var spatialitePath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "gdal", (Environment.Is64BitProcess ? "x64" : "x86"));

            Environment.SetEnvironmentVariable("PATH", spatialitePath + ";" + Environment.GetEnvironmentVariable("PATH"));

C# GDAL 读取GDB、MDB(二者获取加载代码是一致的)_第1张图片

否则会出现:

C# GDAL 读取GDB、MDB(二者获取加载代码是一致的)_第2张图片

2. 支持中文路径和中文属性

   // 为了支持中文路径,请添加下面这句代码
            OSGeo.GDAL.Gdal.SetConfigOption("GDAL_FILENAME_IS_UTF8", "NO");
            // 为了使属性表字段支持中文,请添加下面这句
            OSGeo.GDAL.Gdal.SetConfigOption("SHAPE_ENCODING", "");

3. 注册驱动

        Ogr.RegisterAll();

4. 加载GDB

DataSource ds= Ogr.Open(gdbDir,0);

C# GDAL 读取GDB、MDB(二者获取加载代码是一致的)_第3张图片

你可能感兴趣的:(GDAL)